1. 程式人生 > 程式設計 >SpringBoot載入應用事件監聽器程式碼例項

SpringBoot載入應用事件監聽器程式碼例項

利用 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

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。