某些情況下我們需要在 Spring Boot 容器啟動加載完后執行一些操作,此時可以通過實現 ApplicationListener<E extends ApplicationEvent> 接口,并指定相應事件來執行操作,例如啟動某些自定義守護線程
ApplicationContextEvent 是由 ApplicationContext 引發的事件基類,它有幾個實現類:
ContextRefreshedEvent :ApplicationContext 容器初始化或者刷新時觸發該事件,執行一次
ContextStartedEvent :當使用 ConfigurableApplicationContext 接口的 start() 方法啟動 ApplicationContext 容器時觸發該事件
ContextClosedEvent :當使用 ConfigurableApplicationContext 接口的 close() 方法關閉 ApplicationContext 容器時觸發該事件
ContextStopedEvent : 當使用 ConfigurableApplicationContext 接口的 stop() 方法停止 ApplicationContext 容器時觸發該事件
代碼例子
1
2
3
4
5
6
7
|
@Component public class ApplicationStartup implements ApplicationListener<ContextRefreshedEvent> { @Override public void onApplicationEvent(ContextRefreshedEvent event) { System.out.println( "容器初始化或者刷新時觸發該事件,執行一次" ); } } |
總結
以上所述是小編給大家介紹的Spring Boot容器加載時執行特定操作,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!
原文鏈接:https://www.jianshu.com/p/cc6ab5337cd5