1、创建拦截器类,实现 HandlerInterceptor接口
public class LoginInterceptor implements HandlerInterceptor { Logger logger = LoggerFactory.getLogger(LoginInterceptor.class); @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { logger.info("进入拦截器"); final Object user = request.getSession().getAttribute("user"); if (user==null){ response.sendRedirect("/User/login"); return false; }else { return true; } } }
2、注册拦截器,并设置需要拦截的url
@Configuration public class PageConfig implements WebMvcConfigurer { @Override public void addInterceptors(InterceptorRegistry registry) { //根据需求设置 不需要拦截的 List<String> exclude=new ArrayList<>(); exclude.add("/User/login"); exclude.add("/User/loginTo"); exclude.add("/js/**"); //需要拦截的 registry.addInterceptor(new LoginInterceptor()).addPathPatterns("/**").excludePathPatterns(exclude); }