SpringMVC 拦截器

/**
 * 拦截器,实现HandlerInterceptor接口
 * 只拦截控制器,不拦截jsp
 * @author Administrator
 *
 */
public class MyHeaderInterceptor implements HandlerInterceptor{
    //preHandle在Controller之前执行
    @Override
    public boolean preHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2) throws Exception {
        System.out.println("Interceptor:preHandle");
        return true;
    }
    //postHandle在控制器之后,jsp之前执行
    @Override
    public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3)
            throws Exception {
        System.out.println("Interceptor:postHandle");
    }
    //afterCompletion最后一定会执行,
    @Override
    public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)
            throws Exception {
        System.out.println("Interceptor:afterCompletion");
    }
}

SpringMVC.xml

<!-- 拦截所有控制器 -->   
 <mvc:interceptors>
        <bean id="interceptor" class="com.ment.filter.MyHeaderInterceptor"></bean>    
    </mvc:interceptors>
    <!-- 只拦截mian控制器,可以配置多个mvc:mapping -->
    <mvc:interceptors>
        <mvc:interceptor>
            <mvc:mapping path="/main"/>
            <bean id="interceptor" class="com.ment.filter.MyHeaderInterceptor"></bean>    
        </mvc:interceptor>
    </mvc:interceptors>
原文地址:https://www.cnblogs.com/lastingjava/p/10029716.html