其实Spring 的Servlet拦截器匹配规则(即 <url-pattern>...</url-pattern> )都可以自己定义,例:当映射为@RequestMapping("/user/add")时

  1. 拦截*.do、*.htm, 例如:/user/add.do
    这是最传统的方式,最简单也最实用。不会导致静态文件(jpg,js,css)被拦截。

  2. 拦截 /,例如:/user/add
    可以实现现在很流行的REST风格。很多互联网类型的应用很喜欢这种风格的URL。弊端:会导致静态文件(jpg,js,css)被拦截后不能正常显示。想实现REST风格,事情就是麻烦一些。后面有解决办法还算简单。

  3. 拦截 /*
    这是一个错误的方式,请求可以走到Action中,但转到jsp时再次被拦截,不能访问到jsp。

拦截 /时的配置文件如下

<servlet-mapping>  
<servlet-name>spring-Servlet</servlet-name>  
<!--<url-pattern>*.do</url-pattern>--> <!--第一种-->
 <url-pattern>/</url-pattern><!--第二种-->
</servlet-mapping>
<!-- 对静态资源文件的访问 不支持访问WEB-INF目录 -->
<mvc:default-servlet-handler />
<!--处理HTTP请求/资源/ *有效地服务    在$ { webapproot } /资源/目录静态资源
-->
<!--静态资源-->
<!-- 对静态资源文件的访问 支持访问WEB-INF目录 -->
<mvc:resources mapping="/css/**" location="/css/" />
<mvc:resources mapping="/js/**" location="/js/" />
<mvc:resources mapping="/images/**" location="/images/" />

pysasuke
199 声望4 粉丝

青铜分段掌控雷电


« 上一篇
git常用指令
下一篇 »
TCP、HTTP

引用和评论

0 条评论