如何在spring-boot中订购Filter?

时间:2016-02-05 10:39:03

标签: java spring spring-boot

我正在创建不同的Filter @Bean,并希望在其他过滤器之前强制执行特定过滤器:

@Bean
@Order(1)
public Filter getLoggingUuidFilter() {
    return new Filter() {
        //...
    };
}

@Bean
@Order(2)
public Filter getLoggingRequestFilter() {
    return new CommonsRequestLoggingFilter();
}

结果:Filter2在Filter1之前执行。为什么呢?

1 个答案:

答案 0 :(得分:0)

来自@Order的春季文档

  

特定种类支持基于注释的排序   仅限组件 - 例如,对于基于注释的AspectJ方面。   另一方面,在Spring容器中订购策略,   通常基于Ordered接口以便允许   以编程方式配置每个实例的顺序