解決 Springboot中Interceptor攔截器中依賴注入失敗


問題:

在Springboot攔截器Interceptor中使用@Resource依賴注入時,發現運行的時候被注解的對象居然是null,沒被注入進去

原配置為:

@Configuration
public class WebAppConfig extends WebMvcConfigurerAdapter {

@Override
public void addInterceptors(final InterceptorRegistry registry) {
registry.addInterceptor(new UserInterceptor())
.addPathPatterns("/**")
.excludePathPatterns("/login/**", "/logout/**", "/loginPage/**", "/error/**");
super.addInterceptors(registry);
}
}

 

解決:

在Spring添加攔截器之前先自己創建一下這個Spring Bean,這樣就能在Spring映射這個攔截器前,把攔截器中的依賴注入給完成了。

修改配置:

@Configuration
public class WebAppConfig extends WebMvcConfigurerAdapter {

@Bean
public UserInterceptor userInterceptor() {
return new UserInterceptor();
}

@Override
public void addInterceptors(final InterceptorRegistry registry) {
registry.addInterceptor(userInterceptor())
.addPathPatterns("/**")
.excludePathPatterns("/login/**", "/logout/**", "/loginPage/**", "/error/**");
super.addInterceptors(registry);
}
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM