spring boot 启动事件
展示 boot 启动过程中事件
@SpringBootApplication
public class BootCuratorApplication {
public static void main(String[] args) {
closableRun(args);
}
private static void closableRun(String[] args) {
SpringApplication springApplication = new SpringApplication(BootCuratorApplication.class);
springApplication.addListeners(event ->
System.out.println(">>>>>: "+ event.getClass().getSimpleName()));
ConfigurableApplicationContext cat = springApplication.run(args);
try {
TimeUnit.SECONDS.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(">>>>>: context closing...");
cat.close();
}
}
结果:
>>>>>: ApplicationStartingEvent
>>>>>: ApplicationEnvironmentPreparedEvent
>>>>>: ApplicationContextInitializedEvent
>>>>>: ApplicationPreparedEvent
>>>>>: ServletWebServerInitializedEvent
>>>>>: ContextRefreshedEvent
>>>>>: ApplicationStartedEvent
>>>>>: ApplicationReadyEvent
>>>>>: context closing... # 自定义
>>>>>: ContextClosedEvent