1.我们都知道在基于Spring的Application中,需要在web.xml中增加下面类似的配置信息:
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/springmvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
由此来设置对资源的拦截;在spring中对资源拦截通常会使用一下的三种方式
1. /* 拦截所有 包括jsp , js png .css
2. *.action *.do 拦截以do action 结尾的请求
3. / 拦截所有 ,但不包括jsp (包含 .js .png .css)
注意区分 /* 与 / 之间的区别!
-------------------------------------------------------------------------------------------------------
2.在springmvc.xml中静态资源的放行方式
1、配置对全部资源放行
<!-- 全部资源放行 -->
<mvc:default-servlet-handler/>
2、对指定目录下的资源放行
<!-- 对指定目录下的静态资源放行 -->
<mvc:resources location="/images/" mapping="/images/**"/>
<mvc:resources location="/css/" mapping="/css/**"/>
<mvc:resources location="/js/" mapping="/js/**"/>
在web.xml中放行
3.配置前端控制器的时候指定url-pattern为指定后缀访问,如 *.do *.action
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/springmvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>