今天在SpringMVC项目中添加拦截器时,开始是在配置文件添加如下代码:
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"> <property name="interceptors"> <list> <bean class="cn.com.xxx.common.framework.MyInterceptor" /> </list> </property> </bean>
发现无法进入拦截器,上网查了下,才发现,如果添加了:
<mvc:annotation-driven />
时,其实它已经注册了一个DefaultAnnotationHandlerMapping,而后面你自己注册的优先级没它内部的高,所以一直都不会调用你注册的拦截器。你可以通过:
<mvc:interceptors>
<bean class="cn.com.xxx.common.framework.MyInterceptor" />
</mvc:interceptors>

本文介绍了在SpringMVC项目中正确配置拦截器的方法。当使用<mvc:annotation-driven/>时,默认会注册DefaultAnnotationHandlerMapping,这可能导致自定义拦截器失效。文章提供了通过<mvc:interceptors>标签正确注册自定义拦截器的解决方案。
376

被折叠的 条评论
为什么被折叠?



