转:spring mvc拦截路径配置-查看文章

转:spring mvc拦截路径配置

发表于:2017-07-07 08:08:14 分类:开发杂记 阅读:479次

原文:http://m.blog.csdn.net/zjdwhd/article/details/51384204

1、拦截固定后缀的url、比如设置为*.do 、*.action, 例如:/user/add.action 此方法最简单,不会导致静态资源(jpg,js,css)被拦截。

2、拦截所有,设置为/,例如:/user/add  /user/add.action  

此方法可以实现REST风格的url,很多互联网类型的应用使用这种方式。

但是此方法会导致静态文件(jpg,js,css)被拦截后不能正常显示。需要特殊处理。

对静态资源访问的映射  例如:  <mvc:resources location="/resource/" mapping="/resource/**" />

不配置对静态资源的处理,做如下的配置来解决静态资源的问题:

    <servlet-mapping>

        <servlet-name>default</servlet-name>

        <url-pattern>/static/*</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>

如果可能,springmvc最好不要拦截静态资源,最好让tomcat容器自己处理。

3、拦截所有,设置为/*,<url-pattern>/*</url-pattern> 如果这样设置是有问题的,因为请求到Action,当action转到jsp时再次被拦截,提示不能根据jsp路径mapping成功。 

其实也可以使用 <url-pattern> /app/* </url-pattern>  的配置。

关键词:servlet,mapping


验证码: