Spring Boot Application 事件和监听器

https://www.cnblogs.com/fdzfd/p/7872909.html

**********************************************

一:Application 事件

(1)ApplicationStartingEvent

  An ApplicationStartingEvent is sent at the start of a run, but before any processing except the registration of listeners and initializers.

 (2)ApplicationEnvironmentPreparedEvent

An ApplicationEnvironmentPreparedEvent is sent when the Environment to be used in the context is known, but before the context is created.

示例:

public class MyListener implements ApplicationListener<ApplicationEnvironmentPreparedEvent> {

    @Override
    public void onApplicationEvent(ApplicationEnvironmentPreparedEvent  event) {
        SpringApplication app = event.getSpringApplication();
//        app.setBannerMode(Banner.Mode.OFF);
        System.out.println("#####MyListener found!#####");
    }
}

Application类中添加

@SpringBootApplication
public class Application {
    public static void main(String[] args){
        SpringApplication app = new SpringApplication(Application.class);
        app.addListeners(new MyListener());
        app.run(args);
    }
}

运行结果:

《Spring Boot Application 事件和监听器》

 (3)ApplicationPreparedEvent

    An ApplicationPreparedEvent is sent just before the refresh is started, but after bean definitions have been loaded.

(4)ApplicationReadyEvent 

    An ApplicationReadyEvent is sent after the refresh and any related callbacks have been processed to indicate the application is ready to service requests.

当Application启动好后调用

示例:

public class MyListener implements ApplicationListener<ApplicationReadyEvent> {

    @Override
    public void onApplicationEvent(ApplicationReadyEvent  event) {
        System.out.println("#####MyListener found!#####");
    }
}

运行结果位置:

《Spring Boot Application 事件和监听器》

(5)ApplicationFailedEvent 

    An ApplicationFailedEvent is sent if there is an exception on startup.

这里举了两种事件的例子,其他3种事件可以通过改写MyListener中参数调试。

    原文作者:Spring Boot
    原文地址: https://blog.csdn.net/zhao1949/article/details/80647154
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞