springboot中@webfilter註解的filter時注入bean都是null

在使用@Webfilter註解Filter的狀況下,不上外部tomcat時是沒有問題的。可是在tomcat下運行時,filter中注入的bean就都是nulltomcat

解決辦法:spa

一:去掉@Webfilter註解code

public class GeneralFilter implements Filter {

    
    @Autowired
    private SettingRemote settingRemote; //注入
    
    ....

}

 二: 新增一個配置類,用來手工建立filter的beanblog

@Configuration
public class WebMvcConfig implements WebMvcConfigurer {

    @Bean
    public Filter generalFilter() {
        return new GeneralFilter();
    }

    @Bean
    public FilterRegistrationBean uploadFilterRegistration() {
        FilterRegistrationBean registration = new FilterRegistrationBean();
        registration.setFilter(new DelegatingFilterProxy("generalFilter"));
        registration.addUrlPatterns("/*");
        registration.setName("generalFilter");
        registration.setOrder(1);
        return registration;
    }
}

以後注入的業務bean就不會是nullio

相關文章
相關標籤/搜索