如何确保首先调用Spring @EventListener?

Gil*_*ili 5 java spring

实现ApplicationListener接口时,可以选择实现Ordered以指定调用顺序.现在在Spring 4.2中有一个使用@EventListener注释的选项.有没有办法承诺我的事件监听器将首先被调用?

Ada*_*lik 11

使用方法@Order上的注释@EventListener:

@EventListener(MyEvent.class)
@Order(10)
public void myListener() { /* ... */ }
Run Code Online (Sandbox Code Playgroud)

Ordered界面一样,较低的值具有较高的优先级.

来自@EventListenerJavaDoc:

还可以定义调用特定事件的侦听器的顺序.为此,请@Order在此注释旁边添加Spring的常用注释.