解決Spring Boot 攔截器注入service為空的問題
阿新 • • 發佈:2019-01-23
一般都是因為除了在攔截器之外,還需要在攔截器的配置類中,註冊攔截器時沒有使用spring的bean,而是使用了new建立bean造成的。
可參考:http://blog.csdn.net/wmh13262227870/article/details/77005920
當然,部分版本也支援以下方式:
@Configurationpublic
class WebInterceptorLoader extends WebMvcAutoConfiguration.WebMvcAutoConfigurationAdapter{
//這裡可以自動注入下interceptor
@Autowired
private UserAuthInterceptor userAuthInterceptor;
@Override
public void addInterceptors(InterceptorRegistry registry){
//注意這裡不要使用 new UserAuthInterceptor() ,否則就會出現攔截器裡無法注入service的問題
registry.addInterceptor(userAuthInterceptor).addPathPatterns("/**").excludePathPatterns("/components/*/*","/user-auth/quit");
}
}