SpringBoot拦截器中无法注入bean的解决方法

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注释

posted @ 2018-09-04 16:52  渡劫锦官城  阅读(2842)  评论(0编辑  收藏  举报