SpringBoot攔截器中無法注入bean的解決方法
在使用springboot的攔截器時,有時候希望在攔截器中注入bean方便使用
但是如果直接注入會發現無法注入而報空指針異常
解決方法:
在注冊攔截器時,將攔截器注入為bean
代碼:
@Configuration public class InterceptorRegister extends WebMvcConfigurerAdapter { //以這種方式將攔截器注入為一個bean,可以防止攔截器中無法注入bean的問題出現 @Bean public ApiInterceptor apiInterceptor(){ return new ApiInterceptor(); } @Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(apiInterceptor()).addPathPatterns("/api/**"); super.addInterceptors(registry); } }
注意:要在攔截器上加上@Component注釋