1生成一个拦截器类,实现拦截业务
实现HandlerInterceptor接口,重写preHandle方法
public class LoginInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
System.out.println("实现拦截操作,进入Controller之前执行/");
return true;
}
}
2在配置类文件中重写添加拦截器的方法
实现WebMvcConfigurer接口,重写addInterceptors方法,方法中可以设置拦截或者不拦截的路径
@Configuration //等价于Spring的xml文件
public class WebConfig implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry) {
//定义需要拦截的数组
String[] pathPatterns={
"/**"
};
//定义不需要拦截的数组
String[] excludePathPatterns={
"/web/interceptor1"
};
InterceptorRegistration interceptor = registry.addInterceptor(new LoginInterceptor());
interceptor.addPathPatterns(pathPatterns);
interceptor.excludePathPatterns(excludePathPatterns);
}
}
简单的一个拦截器就实现了