我想@Autowire用一个Filter。所以我在SecurityConfig下面定义我的过滤器:
@Override
protected void configure(HttpSecurity http) throws Exception {
http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS);
http.addFilterBefore(getA(), BasicAuthenticationFilter.class);
http.csrf().disable();
}
@Bean
public A getA(){
return new A();
}
这个过滤器A扩展了Spring的GenericFilterBean。
当我调用控制器时,我得到低于输出,这显示过滤器命中两次。
filter A before
filter A before
mycontroller invoke
filter A after
filter A after
我的观察是,这个额外的调用使用Spring容器调用,因为如果filter没有注册为bean,它只会被命中一次。是什么原因,我该如何解决?
慕娘9325324
人到中年有点甜
慕桂英4014372