java中拦截器(拦截器配置类)失效
问题:写了一个token拦截验证,在运行时发现没有拦截成功,直接进入controller里面的接口
百度拦截器失效的原因:
- 可能是拦截器类上没加@Component,或者配置类上没加@Configuration
- 有多个类继承或实现了WebMvcConfigurationSupport、WebMvcConfiguration,springboot只会执行其中一个配置类,应该把多个写到一起。
我自己的原因分析:
1.首先注解已经都加了,没有错误或者遗漏
2.分析拦截器代码和拦截器配置类代码没有问题
3.发现同事写了一个配置类继承了WebMvcConfigurationSupport类,而我写的继承了WebMvcConfigurer导致失效,因为spring容器不会加载进来了
解决方法: (以下两种方法都可以使配置类生效)
1.将自己写的代码移到同事的配置类里面
2.将同事写的代码继承WebMvcConfigurationSupport改为继承WebMvcConfigurer