文章测试

  1. ApplicationStartingEvent事件,SpringApplication开始启动,在任何处理之前除了listeners和initializers的注册;
  2. ApplicationEnvironmentPreparedEvent应用环境准备事件,此时context还没有被创建,最典型的实现就是BootstrapApplicationListener,启动了bootstrap context,是我们项目中使用的application context的父类,共享同一套environment,加载了bootstrap.properties/yml配置;
  3. ApplicationContextInitializedEvent,在context创建后发布,此时bean还没有被注册和加载;
  4. ApplicationPreparedEvent,在加载完SpringApplication中配置的primarySources,注册成beanDefinition后发布事件;
  5. ContextRefreshedEvent,应用上下文加载完成事件,可以监听此事件来做一些加载完成后的操作。注意如果是spring cloud工程,那么其中有一个RestartListener,会在监听ContextRefreshedEvent事件时重新发布ApplicationPreparedEvent事件。
  6. ServletWebServerInitializedEvent,在webServer创建好后发布,监听此事件可以操作webServer
  7. ApplicationStartedEvent,在context refresh方法后发布事件,此时ApplicationRunnerCommandLineRunner的调用还未执行;
  8. ApplicationReadyEvent,应用初始化完成,可以准备接收请求,ApplicationRunnerCommandLineRunner的调用后发布。
  9. ApplicationFailedEvent,在启动时有异常的情况下发布;

你可能感兴趣的:(spring)