问题描述
是基于注解的,不知道如何配置HandlerInterceptor。现在所有的controller 是基于注解的没有了mapping不知道怎么设置才能让自己写HandlerInterceptor对所有的过滤器进行拦截。
解决方案
你是在程序里直拉使用@Controller和@RequestMapping来进行映射吧,可以使用DefaultAnnotationHandlerMapping对所有请求进行拦截,代码如下: <!--这个就是你用@Controller注释的控制器--> <bean id="controller"class="com.test.controller"/> <!--加入拦截器--> <bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" > <property name="interceptors"> <list> <bean class="com.test.TestInterceptor"/> </list> </property> </bean>TestInterceptor拦截器类package com.test;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;public class TestInterceptor extends HandlerInterceptorAdapter {public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {///要拦截的处理return true;}}