1. 程式人生 > >解決Spring Boot 攔截器注入service為空的問題

解決Spring Boot 攔截器注入service為空的問題

一般都是因為除了在攔截器之外,還需要在攔截器的配置類中,註冊攔截器時沒有使用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");
}
}