web过滤器使用spring依赖注入 解决过滤器中不能注入bean的问题

@Component
public class AppGateAwayFilter implements Filter {
    private static final Logger logger = LoggerFactory.getLogger(AppGateAwayFilter.class);
 
    @Autowired
    private RedisTemplate<String, Object> redisTemplate;
}
 
@Configuration
public class Config implements WebApplicationInitializer {
 
    @Override
    public void onStartup(ServletContext servletContext) throws ServletException {
        DelegatingFilterProxy delegatingFilterProxy = new DelegatingFilterProxy();
        delegatingFilterProxy.setTargetBeanName("appGateAwayFilter");
        delegatingFilterProxy.setTargetFilterLifecycle(true);
        FilterRegistration filterRegistration = servletContext.addFilter("appGateAwayFilter",delegatingFilterProxy);
        filterRegistration.addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST), false, "/rest/api/*");
    }
 
}

猜你喜欢

转载自dream-1086.iteye.com/blog/2376271