静态资源的放行
在页面中 有这么一句静态资源请求语句:
<script type="text/javascript" src="js/demo.js"></script>相当于在浏览器的地址栏中输入了 请求地址一样,一样的会被DIspactherServlet的拦截请求,会被HandlerMapping 解析,然后对应的方法执行,但是此时并没有对应的方法,所以会被报404错误。
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
<!-- 扫描注解,当SpringMvc扫描之后,Spring不能再扫了 -->
<context:component-scan base-package="com.bjsxt.controller"></context:component-scan>
<!-- 配置DefaultAnnotationHandlerMapping和AnnotationMethodHandlerAdapter 的<bean> -->
<mvc:annotation-driven></mvc:annotation-driven>
<!-- 静态资源放行 -->
<!-- mapping表示 handlermapping解析之后出现什么的格式 (会自动添加 /)-->
<!-- handlerapdater就不会去寻找@RequestMapping(),而是去location中寻找资源 -->
<!-- **表示子文件/子文件夹的内容 -->
<mvc:resources location="/js/" mapping="/js/**"></mvc:resources><!-- js/demo.js js/abc/demo.js -->
</beans>
在SpringMVC3.0之后推荐使用一:
<mvc:resources location="/img/" mapping="/img/**"/>
<mvc:resources location="/js/" mapping="/js/**"/>
<mvc:resources location="/css/" mapping="/css/**"/>
本文介绍如何在SpringMVC中配置静态资源放行,避免404错误。通过<mvc:resources>标签设置location及mapping属性,实现对指定路径下的静态资源如JS、CSS、图片等直接放行。
1469

被折叠的 条评论
为什么被折叠?



