1.写一个拦截类需要继承HandlerInterceptor
public class MyInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
HttpSession session = request.getSession();
String username = (String) session.getAttribute("username");
if (username != null){
System.out.println(username);
return true;
}
request.getRequestDispatcher("/toLogin").forward(request,response);
return false;
}
2.写一个配置类,把自己写的拦截器,在配置类加上,如何需要拦截的路径和放行的路径
@Configuration
public class MyConfig implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new MyInterceptor())
.addPathPatterns("/**")
.excludePathPatterns("/toLogin","/login");
}
}