Spring MVC 拦截 js,css,png 等资源
Posted imsoft.cnblogs
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring MVC 拦截 js,css,png 等资源相关的知识,希望对你有一定的参考价值。
springMVC的<mvc:resources mapping="***" location="***">标签是在spring3.0.4出现的,主要是用来定义对静态资源的访问。
上网搜了一下跟这个配置相关的文章,大多推荐用下面这种。可是,用这种的话,如果有一个新目录,就得新增一条配置,比较麻烦。
<!-- For static resources --> <mvc:resources mapping="/image/**" location="/images/" /> <mvc:resources mapping="/js/**" location="/js/" /> <mvc:resources mapping="/css/**" location="/css/" /> <mvc:resources mapping="/html/**" location="/html/" /> <mvc:resources mapping="/software/**" location="/software/" />
下面这种是直接根据静态文件的后缀来配置的,比较通用,不用为每个子目录配置一个:
<mvc:resources location="/" mapping="/**/*.html"/> <mvc:resources location="/" mapping="/**/*.js"/> <mvc:resources location="/" mapping="/**/*.css"/> <mvc:resources location="/" mapping="/**/*.png"/> <mvc:resources location="/" mapping="/**/*.gif"/>
(原创文章,转载请注明转自Clement-Xu的csdn博客。)
版权声明:本文为原创文章,转载请注明转自Clement-Xu的csdn博客。
来源:http://blog.csdn.net/tlin2011/article/details/45482463
spring mvc 配置为:
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
时,当直接访问png,jpg等资源时,也会拦截, web.xml 加入如下配置 则web服务器会处理,不会被spring 拦截
亲测:
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.jpg</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.js</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.png</url-pattern>
</servlet-mapping>
另外: 不知为何加入<mvc:resources mapping="/images/**" location="/images/" /> 可以访问资源,但是访问不了 controller了
以上是关于Spring MVC 拦截 js,css,png 等资源的主要内容,如果未能解决你的问题,请参考以下文章
在JSP中常见问题,防止SpringMVC拦截器拦截js等静态资源文件的解决方案