SpringBoot Application共支持6种事件监听,分别是:
// 1.Spring最开始启动的时候触发
ApplicationStartingEvent
// 2.Spring已经准备好上下文但是上下文尚未创建的时候触发
ApplicationEnvironmentPreparedEvent
// 3.Bean定义加载之后、刷新上下文之前触发
ApplicationPreparedEvent
// 4.在刷新上下文之后、调用application命令之前触发
ApplicationStartedEvent
// 5.在调用applicaiton命令之后触发
ApplicationReadyEvent
// 6.启动Spring发生异常时触发
ApplicationFailedEvent
注意
1. Bean的创建在第三步和第四步之间
2. ApplicationRunner和CommandLineRunner的执行在第四步和第五步之间
3. 启动类中,执行SpringApplication.run()方法后的代码,在第六步之后执行
事件监听的实现可以参考SpringBoot入门十一,容器启动完成执行指定代码的方式二