
新建一个拦截器(UserInterceptor),实现HandlerInterceptor接口
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
/** * 拦截器 * @Author Administrator * @Date 2018-12-11. */ @Component public class UserInterceptor implements HandlerInterceptor{ @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { System.out.println("拦截器"); HttpSession session = request.getSession(); User user = (User) session.getAttribute("USER_SESSION"); if (user != null){ return true; }else { throw new MyException(ResultEnum.USER_LOGIN_NOTLOGIN); } } @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, @Nullable ModelAndView modelAndView) throws Exception { } @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, @Nullable Exception ex) throws Exception { } }
|
定义一个配置类去实现WebMvcConfigurer类,重写addInterceptors()方法,添加自定义的拦截器
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
/** * @Author Administrator * @Date 2018-12-11. */ @Configuration public class WebMvcConfg implements WebMvcConfigurer{ @Autowired private UserInterceptor userInterceptor; @Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(userInterceptor) //添加拦截路径 .addPathPatterns("/api/**") //放行路径 .excludePathPatterns("/api/login"); } }
|
近期评论