SpringMVC静态资源的过滤

方法一:使用tomcat默认的servlet进行匹配。

配置在web.xm,配置代码如下:

<!-- 激活tomcat的defaultservlet拦截静态资源 --> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.jpg</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>*.js</url-pattern>
</servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.png</url-pattern>
</servlet-mapping>

这种方法过于繁琐,一般不推荐。

方法二:<mvc:resources>标签配置

» location:表示静态资源本地真实路径,例如/static/js/,那就表示
        webapp下的这个目录中的资源不会拦截,但是注意不包括子目录
» mapping:表示映射的虚拟路径
示例代码如下:
<!-- 不拦截/static/js/目录下的所有文件 -->
<mvc:resources location="/static/js/" mapping="/static/js/**"></mvc:resources>
<!-- 不拦截所有以.js为后缀名的请求 -->
<mvc:resources location="/" mapping="/**/*.js"/>
<!-- 编写多个标签按照静态资源的类型进行过滤 -->
<mvc:resources location="/static/js/"
mapping="/static/js/**"></mvc:resources>
<mvc:resources location="/static/css/"
mapping="/static/css/**"></mvc:resources>
<mvc:resources location="/static/images/"
mapping="/static/images/**"></mvc:resources>
<!-- 可以一次性过滤所有静态资源 -->
<mvc:resources location="/static/" mapping="/static/**"/>

 方法三:<mvc:default-servlet-handler /> 标签(推荐)

   <!--过滤静态资源-->
    <mvc:default-servlet-handler />
posted @ 2022-08-31 19:20  陆陆无为而治者  阅读(219)  评论(0)    收藏  举报