现有web系统替换成Spring Boot2框架 之7 拦截器 spring bootmaven拦截器addInterceptors
程序员文章站
2022-05-10 13:10:17
...
1. 自定义拦截器java类,继承HandlerInterceptorAdapter。例如LoginAnnotationInterceptor
2. 编写配置类,实现WebMvcConfigurer,重写addInterceptors方法,添加自定义的拦截器
例如:拦截URL 中的*.do *.action等
@Configuration public class SystemWebMvcConfig implements WebMvcConfigurer{ @Autowired private LoginAnnotationInterceptor loginAnnotationInterceptor; @Override public void configurePathMatch(PathMatchConfigurer configurer) { configurer.setUseRegisteredSuffixPatternMatch(true); } @Override public void addInterceptors(InterceptorRegistry registry) { List<String> excludeList = new ArrayList<String>(); registry.addInterceptor(loginAnnotationInterceptor).addPathPatterns("/**/**/**.do").excludePathPatterns(excludeList); } }
注:
registry.addInterceptor(loginAnnotationInterceptor).addPathPatterns("/**/**/**.do").excludePathPatterns(excludeList);
“/**/**/**.do”,每一个/**代表一层目录,只用一个/**.do只能拦截“loginAct.do”无法拦截“bss/user/user!goList.do”。所以要拦截所有的.do请求需要按照最深的目录配置
推荐阅读
-
现有web系统替换成Spring Boot2框架 之20 启动报错处理 spring boot启动报错@SpringBootApplicationUnable to start ServletWebServerApplicationContext due to missing ServletWebServerFactory bean
-
现有web系统替换成Spring Boot2框架 之17 设置项目访问端口 spring boot端口
-
现有web系统替换成Spring Boot2框架 之20 启动报错处理 spring boot启动报错@SpringBootApplicationUnable to start ServletWebServerApplicationContext due to missing ServletWebServerFactory bean
-
现有web系统替换成Spring Boot2框架 之21 同时支持带项目名和不带项目名访问,web访问强制https,接口保持http访问 Spring Boot2带项目名不带项目名httpshttp
-
现有web系统替换成Spring Boot2框架 之7 拦截器 spring bootmaven拦截器addInterceptors
-
现有web系统替换成Spring Boot2框架 之10 定时任务Quartz Scheduler spring bootmaven定时任务quartz
-
现有web系统替换成Spring Boot2框架 之14 I18n国际化实现 spring bootmaveni18国际化
-
现有web系统替换成Spring Boot2框架 之4 日志框架 Spring Boot日志logback
-
现有web系统替换成Spring Boot2框架 之21 同时支持带项目名和不带项目名访问,web访问强制https,接口保持http访问 Spring Boot2带项目名不带项目名httpshttp