java - 完整的生命周期

需要继承
ApplicationListener<ApplicationEvent>
public class ApplicationEventListener implements ApplicationListener<ApplicationEvent> {

然后重写

 

  @SneakyThrows
    @Override
    public void onApplicationEvent(ApplicationEvent event) {
// 在这里可以监听到Spring Boot的生命周期
if(event instanceof ApplicationStartingEvent){
    logger.info("应用程序启动中");
} else if (event instanceof ApplicationEnvironmentPreparedEvent) { // 初始化环境变量
    logger.info("初始化环境变量");
} else if (event instanceof ApplicationPreparedEvent) { // 初始化环境变量完成,初始化上下文context完成
    logger.info("初始化环境变量完成,初始化上下文context完成");
} else if (event instanceof ContextRefreshedEvent) { // 应用刷新
    logger.info("应用刷新");
} else if (event instanceof ApplicationReadyEvent) {// 应用已启动完成
    logger.info("应用已启动完成");
} else if (event instanceof ContextStartedEvent) { // 应用启动,Spring2.5新增的事件,当容器调用ConfigurableApplicationContext的 Start()方法开始/重新开始容器时触发该事件。
    logger.info("应用启动好了");
} else if(event instanceof ApplicationFailedEvent){
    logger.info("应用启动失败");
}else if (event instanceof ContextStoppedEvent) { // 应用停止,Spring2.5新增的事件,当容器调用ConfigurableApplicationContext 的Stop()方法停止容器时触发该事件。
    logger.info("应用停止");
} else if (event instanceof ContextClosedEvent) { // 应用关闭,当ApplicationContext被关闭时触发该事件。容器被关闭时,其管理的所有 单例Bean都被销毁。
    logger.info("应用关闭");
} else {
    logger.info("其他事件" + event.toString());
}
 
  
}

 

posted @ 2022-08-02 11:00  岑惜  阅读(42)  评论(0)    收藏  举报