我们知道,我们可以像这样配置一个拦截器:
<mvc:interceptor>
<mvc:mapping path="/outfit/**" />
<bean class="OpenSessionInViewInterceptor">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
我的问题,如何配置排除路径?
答案 0 :(得分:10)
从Spring 3.2开始,他们就添加了这个功能。
请参阅Spring文档中的此示例:
<mvc:interceptors>
<bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor" />
<mvc:interceptor>
<mapping path="/**"/>
<exclude-mapping path="/admin/**"/>
<bean class="org.springframework.web.servlet.theme.ThemeChangeInterceptor" />
</mvc:interceptor>
<mvc:interceptor>
<mapping path="/secure/*"/>
<bean class="org.example.SecurityInterceptor" />
</mvc:interceptor>
以下是文档的link
答案 1 :(得分:0)
我认为你不能以声明的方式。但是在拦截器中,您可以添加if(..)
并验证是否应排除请求uri。您可以在拦截器xml定义中将排除路径设置为列表属性。
为此你必须扩展OSIV拦截器并添加自定义逻辑和放大器。排除清单属性。