springmvc的拦截器,怎么设置不拦截的url
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springmvc的拦截器,怎么设置不拦截的url相关的知识,希望对你有一定的参考价值。
在xml里配置拦截器的地方设置一下exclude-mapping:
<mvc:interceptors><mvc:interceptor>
<mvc:mapping path="/project/**" /> <!--拦截-->
<mvc:exclude-mapping path="/project/api/**" /> <!--忽略-->
<bean class="xx.xx.XXXInterceptor" /> <!--你的拦截器-->
</mvc:interceptor>
</mvc:interceptors>
如果你用SpringBoot,可以直接代码:
@Overridepublic void addInterceptors(InterceptorRegistry registry)
registry.addInterceptor(new XXXInterceptor()).addPathPatterns("/**").excludePathPatterns("/api/**");
super.addInterceptors(registry);
参考技术A <!-- 默认首页 -->
<mvc:view-controller path="/" view-name="redirect:/loginpage" />
<!-- 拦截器 -->
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/**"/>
<mvc:exclude-mapping path="/loginpage/**"/>
<bean class="com.me.common.LoginInterceptor" />
</mvc:interceptor>
</mvc:interceptors>
<mvc:exclude-mapping path="/loginpage/**"/>
------------------改成----->
<mvc:exclude-mapping path="/"/>
<mvc:exclude-mapping path="/loginpage/**"/>
估计是你访问"/"时就到了拦截器
spring mvc的静态资源拦截器怎么配置
参考技术A初学者基本上使用1,2,3方案:
所有请求全部拦截,都在spring mvc 处理,静态资源如下配置
<mvc:resources mapping="/images/**" location="/images/" cache-period="31556926"/>
所有请求全部拦截,但是在web.xml中添加对静态资源的默认访问,如下
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.jpg</url-pattern>
</servlet-mapping>
所有请求全部拦截,在springmvc配置文件中添加如下,这种方式对spring版本必须要求3.0.5及以上。
<mvc:default-servlet-handler/>
然后是我极力推荐的一种,web.xml中配置DispatcherServlet的时候mapping如下配置,url-pattern不要全部拦截,把需要springmvc处理的请求添加自定义头。这种方法性能最好。
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>/自定义</url-pattern>
</servlet-mapping>
以上是关于springmvc的拦截器,怎么设置不拦截的url的主要内容,如果未能解决你的问题,请参考以下文章
如何让springmvc 不拦截所有带后缀的url-CSDN论坛