springMVC配置后访问图片问题

虽然很简单,

但是有时候怎么图片都显示不出来,路径老是搞错,现在上传一个能正确显示的例子


项目概况如下图所示



jsp代码如下

<%@ page pageEncoding="UTF-8" contentType="text/html" isELIgnored="false" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>test jsp</title>


</head>


<body>

<img src="${pageContext.request.contextPath}/jsp/images/Gateway_Learn.jpg" width="356" height="111" align="middle">
<span class="title">1111Ÿ</span><br/>

</body>


</html>


部署到服务器,然后访问url:http://localhost:8888/jsp_day3/test.jsp即可


显示不了图片的原因,有个项目我配置了springMVC,这样就显示不出图片了,原因:

由于spring mvc拦截了所有请求,所以当你设置 

<!--配置springMVC前端控制器-->
<servlet>
<servlet-name>mvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>mvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>

的时候会影响到静态资源文件的获取,这样就需要有这个标签来帮你分类完成获取静态资源的责任。

打开mvc-servlet.xml文件,添加如下配置 

<mvc:resources location="/WEB-INF/view/images/" mapping="/images/**"/>  
<mvc:resources location="/WEB-INF/view/js/" mapping="/js/**"/>  
<mvc:resources location="/WEB-INF/view/css/" mapping="/css/**"/>  
    <mvc:default-servlet-handler />  

然后把相应的资源都放入/WEB-INF/view/目录下

关键是<mvc:default-servlet-handler />  起作用,上面的三行都可以不要。

这样就会出现另一个问题

增加<mvc:default-servlet-handler/>,只能访问jsp和静态文件,访问action则报404错误

解决办法:

再增加如下配置

<mvc:annotation-driven />


问题解决,赞一个吧



智能通风换气系统是一种能够自动调节室内空气质量,以达到适宜居住环境的系统。本文介绍的基于STM32微控制器的智能通风换气系统,其设计理念是通过集成各种传感器,实时监测房间内的环境指标,并结合控制系统实现自动或手动控制通风换气,以保障室内空气质量。 系统的主要组成部分包括: 1. STM32F407ZGT6单片机:该单片机是系统的核心控制单元,负责处理来自各个传感器的数据,执行用户设置的指令,以及控制执行机构的动作。 2. 传感器模块:系统中使用了以下传感器来收集环境数据: - DHT11温湿度传感器:用于测量房间内的温度湿度。 - MQ-135空气质量传感器:主要检测空气质量指数,包括有害气体浓度。 - MQ-2可燃气体检测传感器:用于检测房间内的易燃气体浓度,如瓦斯、天然气泄漏。 3. TFT_LCD液晶显示系统:将收集到的环境数据系统状态实时显示给用户观看,使用户可以直观地了解当前室内空气状况。 4. 继电器:用于控制房间内通风换气设备的开关,以执行必要的通风或排风操作。 5. 执行机构:指通风设备、加湿装置等,它们通过继电器接收到来自单片机的指令后进行工作。 6. 按键开关:用户可以通过按键开关来手动控制执行机构的启停,实现手动控制通风换气的功能。 系统的工作流程为: 当传感器模块检测到温度、湿度或空气质量指数超标时,相应的数据会被发送到STM32单片机。单片机分析这些数据后,如果环境质量不达标,会立即通过继电器控制开启通风换气设备进行排风或调节室内空气。同时,这些数据也会通过TFT_LCD液晶显示系统显示出来。当环境质量达标后,系统发送停止信号,执行机构停止工作。 系统的优点是能够自动监测调节室内空气质量,减少人工干预,提高居住舒适度。系统还可以通过按键手动控制通风换气,增加了使用的灵活性。 本设计针对的主要是民用建筑的智能通风换气系统,其控制功能结构框图如图1所示。在实际应用中,该系统能够有效地提高居住环境的空气质量,为人们提供一个健康、绿色的居住环境。 从硬件设计的角度看,单片机最小系统的设计至关重要,它主要包括电源电路、振荡电路以及复位电路部分。电源电路为单片机以及传感器模块提供稳定的工作电压,确保系统正常运转。振荡电路为单片机提供时钟信号,使其能够按照预定的频率运行。复位电路则确保单片机在上电或者出现异常时能够复位到初始状态,保证系统能够重新启动运行。 在设计时,还需要考虑系统的稳定性可靠性,确保在各种环境条件下都能稳定运行。比如,电源电路要设计有适当的滤波稳压措施,以抵御电网波动对系统的影响。同时,单片机程序中应包含错误处理异常检测机制,以便在传感器失效或数据异常时能够及时采取措施。 系统的用户界面设计应简洁易懂,方便用户进行手动控制查看状态信息。液晶显示屏应选择清晰度高、反应快的产品,以提供良好的用户体验。 以上就是对“基于STM32的智能通风换气系统设计”的详细解读,通过上述知识点,我们可以了解到系统设计的背景、目的、主要构成部件、工作流程以及硬件设计的关键点,并对如何提高系统的稳定性用户界面友好性有了初步的认识。
使用Spring AOP实现接口访问量统计,可以按照以下步骤进行: 1. 定义一个注解@AccessCount,用于标记需要统计访问量的方法。 ```java @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface AccessCount { } ``` 2. 定义一个切面类AccessCountAspect,用于统计被@AccessCount标记的方法的访问量。这个类需要实现org.aspectj.lang.annotation.Aspect接口,并使用@Aspect注解标记。 ```java @Aspect @Component public class AccessCountAspect { private Map<String, Integer> accessCounts = new ConcurrentHashMap<>(); @Pointcut("@annotation(com.example.demo.annotation.AccessCount)") public void accessCountPointcut() {} @Around("accessCountPointcut()") public Object accessCountAround(ProceedingJoinPoint joinPoint) throws Throwable { String methodName = joinPoint.getSignature().toShortString(); int count = accessCounts.getOrDefault(methodName, 0); accessCounts.put(methodName, count + 1); return joinPoint.proceed(); } public Map<String, Integer> getAccessCounts() { return accessCounts; } } ``` 3. 在Spring配置文件中定义切面切点。 ```xml <aop:aspectj-autoproxy/> <bean id="accessCountAspect" class="com.example.demo.aspect.AccessCountAspect"/> <aop:config> <aop:aspect ref="accessCountAspect"> <aop:pointcut id="accessCountPointcut" expression="execution(* com.example.demo.service..*(..))"/> <aop:around method="accessCountAround" pointcut-ref="accessCountPointcut"/> </aop:aspect> </aop:config> ``` 4. 在需要统计访问量的方法上添加@AccessCount注解。 ```java @Service public class UserServiceImpl implements UserService { @AccessCount @Override public User getUserById(Long id) { // ... } } ``` 5. 在需要获取访问量的地方,注入AccessCountAspect并调用getAccessCounts方法。 ```java @RestController @RequestMapping("/access-count") public class AccessCountController { @Autowired private AccessCountAspect accessCountAspect; @GetMapping("") public Map<String, Integer> getAccessCounts() { return accessCountAspect.getAccessCounts(); } } ``` 这样就可以使用Spring AOP实现接口访问量统计了。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值