spring mvc处理静态文件

现在流行REST开发风格,REST风格的URL 是不希望看到例如:*.do后缀的。

<servlet-mapping>  
        <servlet-name>cxy</servlet-name>  
                <!--为了符合REST风格,这里就需要改成/-->  
        <url-pattern>/</url-pattern>  
</servlet-mapping> 

但是这样引来一个问题,静态的文件将不能被访问到。spring 提供了2种处理办法。

1.<mvc:default-servlet-handler/>(直接写入配置文件即刻,当然这里支持配置默认Servlet名)

<!-- 配置这个可以让静态文件交给默认的web容器处理   
       但是这个只是传统的处理静态文件方式 并不能访问web-inf下的文件  
-->  
<mvc:default-servlet-handler/>  

 2.<mvc:resources location="/,/WEB-INF/resourcesRoot/" mapping="/r/**" cache-period="10"/>

<!-- 还可以采用下面方式进行映射,可以将资源文件放到web-inf中 从而实现资源文件打入jar包的功能   
       cache-period 为缓存时间 一半设为1年 31536000,  
       开发时建议设小点 以防止缓存带来的麻烦,  
       项目正式上线后 可以采用发布版本号的方式 防止 缓存带来的麻烦  
-->  
<mvc:resources location="/,/WEB-INF/resourcesRoot/" mapping="/r/**" cache-period="10"/>  

10秒

原文地址:https://www.cnblogs.com/Mr-Rocker/p/8435811.html