利用 Spring 工厂加载机制,实例化 ApplicationListener 实现类,并排序对象集合
创建应用事件监听器
创建类实现接口ApplicationListener,可以使用@Order或实现Orderd接口进行排序
@Order(Ordered.HIGHEST_PRECEDENCE) public class HelloWorldApplicationListener implements ApplicationListener<ContextRefreshedEvent> { @Override public void onApplicationEvent(ContextRefreshedEvent event) { System.out.println("HelloWorld : " + event.getApplicationContext().getId() + " , timestamp : " + event.getTimestamp()); } }
public class AfterHelloWorldApplicationListener implements ApplicationListener<ContextRefreshedEvent>,Ordered { @Override public void onApplicationEvent(ContextRefreshedEvent event) { System.out.println("AfterHelloWorld : " + event.getApplicationContext().getId() + " , timestamp : " + event.getTimestamp()); } @Override public int getOrder() { return Ordered.LOWEST_PRECEDENCE; } }
在spring.properties中配置
# ApplicationListener
org.springframework.context.ApplicationListener=\
com.imooc.diveinspringboot.listener.AfterHelloWorldApplicationListener,\
com.imooc.diveinspringboot.listener.HelloWorldApplicationListener,\
输出
HelloWorld : application , timestamp : 1591105193644
AfterHelloWorld : application , timestamp : 1591105193644
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自学编程网。
- 本文固定链接: https://zxbcw.cn/post/188144/
- 转载请注明:必须在正文中标注并保留原文链接
- QQ群: PHP高手阵营官方总群(344148542)
- QQ群: Yii2.0开发(304864863)