springmvc拦截器配置

实现 HandlerInterceptor 接口

    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse
            response, Object handler) throws Exception {
        System.out.println("目标Handler执行前执行MyInterceptor01 --> preHandle方 法...");
/**
 * 返回 true:执行handler方法
 * 返回 false:阻止目标handler方法执行
 */
        return true;
    }
    @Override
    public void postHandle(HttpServletRequest request, HttpServletResponse
            response, Object handler, ModelAndView modelAndView) throws Exception {
        System.out.println("目标Handler执行后,视图生成前执行MyInterceptor01 --> postHandle方法...");
    }
    @Override
    public void afterCompletion(HttpServletRequest request, HttpServletResponse
            response, Object handler, Exception ex) throws Exception {
        System.out.println("目标Handler执行后,视图生成后执行MyInterceptor01 --> afterCompletion方法...");
    }


}

拦截器xml配置












 

 



测试

    @RequestMapping("/hello")
    public ModelAndView hello(){
        System.out.println("方法执行前就执行这个方法");
        ModelAndView mv=new ModelAndView();
        mv.addObject("hello", "hello spring mvc");
        mv.setViewName("hello");
        return mv;
    }

springmvc拦截器配置_第1张图片

第二种方法配置

 
            
             
            
             
            
        

在这里插入图片描述

*继承 HandlerInterceptorAdapter

    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        System.out.println("目标Handler执行前执行MyInterceptor02 --> preHandle方 法...");
        return true;
    }
}

xml配置改正当前的类路径
在这里插入图片描述

如果想跳过 过滤器的话
xml配置











多个拦截器实现















springmvc拦截器配置_第2张图片

你可能感兴趣的:(java,spring,intellij-idea)