SpringBoot 拦截器
继承HandlerInterceptorAdapter方法 重写方法
@Component public class ComInterceptor extends HandlerInterceptorAdapter { @Autowired IUserDao userDao; @Autowired IMethodDao methodDao; // 请求之前调用(Controller 方法之前调用) @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { HttpSession session = request.getSession(); User user = (User) session.getAttribute("USER"); JudgeCast.cast(user, ResponseCode.NOT_LOGIN); Site siteInfo = userDao.findSiteByUserId(user.getId()); Cache.methods = methodDao.findMethodBySiteId(siteInfo.getId()); System.out.println(Cache.methods); return true; } // 请求处理之后调用 @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { super.postHandle(request, response, handler, modelAndView); } // 请求结束后调用 @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { super.afterCompletion(request, response, handler, ex); } }
添加配置类
@Configuration public class WebAppConfig implements WebMvcConfigurer { @Autowired ComInterceptor commonInterceptor; @Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(commonInterceptor) .addPathPatterns("/**") // 放行路径 .excludePathPatterns("/login","/logOut") // 放行swagger .excludePathPatterns("/swagger-resources/**", "/webjars/**", "/v2/**", "/swagger-ui.html/**"); } }