项目中遇到一种场景,登录拦截器需要拦截.html后缀等动态请求,但是发现语法不对头。
<mvc:interceptors>
<mvc:interceptor>
正确的写法:<mvc:mapping path="/**/*.html"/>
错误的写法:<mvc:mapping path="/**.html"/>,<mvc:mapping path="*.html"/>
</mvc:interceptors>
为什么会这样呢?mvc:mapping的语法,与通常的url映射不太一样,比如web.xml拦截器、Struts。
(当然,这个是我的个人感觉) 。
我之前的个人感觉是:*.html就是最简单的拦截后缀的path写法。
遇到这个问题,是因为boss写登录拦截器遇到了这个问题,我协助解决下。解决这个问题,参考了网上的2个答案。
问题1:
SpringMVC interceptor有时候配置的时候path="/**" 两个星号什么意思,与path="/"以及path="/*"什么区别
靠谱答案:/**的意思是所有文件夹及里面的子文件夹
/*是所有文件夹,不含子文件夹
SpringMVC拦截器-路径语法-略坑
原文:http://blog.csdn.net/fansunion/article/details/41844929