TODO:登录拦截、当访问非login页面时拦截判断是否存在session、是则放行、否则跳转到login。访问login时直接放行
@Configuration
@Slf4j
public class MvcSupport extends WebMvcConfigurationSupport {
@Autowired
public loginInterceptor interceptor;
@Override
protected void addInterceptors(InterceptorRegistry registry) {
log.info("正在拦截中......");
registry.addInterceptor(interceptor).addPathPatterns("/**");
}
}
上面是拦截路径的设置
@Component
public class loginInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
String URI= request.getRequestURI();
log.info("URI ======》"+URI);//此处URI为error
if(URI.contains("login")){
log.info("URI包含login、放行");
return true;
}
if(request.getSession().getAttribute("employee")!=null){
log.info("该用户已授权、成功进入系统");
return true;
}
log.info("该用户无权限、返回登陆界面");
response.sendRedirect("/backend/page/login/login.html");
return false;
}
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
HandlerInterceptor.super.postHandle(request, response, handler, modelAndView);
}
@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
HandlerInterceptor.super.afterCompletion(request, response, handler, ex);
}
}
当访问 http://localhost:8080/backend/page/login/login.html 时、为什么会出现重定向次数过多?

下面是项目结构
