自定义拦截器
public class MyInterceptor implements HandlerInterceptor {private Logger logger = LoggerFactory.getLogger(MyInterceptor.class);@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {logger.info("preHandle....");return true;}@Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {logger.info("postHandle...");}@Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {logger.info("afterCompletion...");}}
注册拦截器
@Configurationpublic class WebMvcConfig implements WebMvcConfigurer {@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(handlerInterceptor())//配置拦截规则.addPathPatterns("/**");}@Beanpublic HandlerInterceptor handlerInterceptor() {return new MyInterceptor();}}
多个拦截器
public void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(handlerInterceptor()).addPathPatterns("/**");registry.addInterceptor(handlerInterceptor2()).addPathPatterns("/**");}
执行顺序

