springboot-事件


@SpringBootApplication
public class SpringbootdemoApplication {

    public static void main(String[] args) {

        new SpringApplicationBuilder(SpringbootdemoApplication.class)
               
                .listeners(event -> {
                    System.out.println("监听到事件:" + event.getClass().getName());
                })
                .run(args)
                .close();
    }

}

输出结果:

监听到事件:org.springframework.boot.context.event.ApplicationStartingEvent(1)
监听到事件:org.springframework.boot.context.event.ApplicationEnvironmentPreparedEvent(2)

监听到事件:org.springframework.boot.context.event.ApplicationContextInitializedEvent

监听到事件:org.springframework.boot.context.event.ApplicationPreparedEvent(3)

监听到事件:org.springframework.context.event.ContextRefreshedEvent

监听到事件:org.springframework.boot.web.servlet.context.ServletWebServerInitializedEvent

监听到事件:org.springframework.boot.context.event.ApplicationStartedEvent(4)

监听到事件:org.springframework.boot.context.event.ApplicationReadyEvent(5)

监听到事件:org.springframework.context.event.ContextClosedEvent

(6)ApplicationFailedEvent 特殊情况

以上6种是springboot的事件。

ConfigFileApplicationListener监听ApplicationEnvironmentPreparedEvent事件,从而加载application.properties或

application.yml文件

springboot很多组件依赖于springboot事件监听器实现,本质是spring framework事件监听机制

SpringApplication利用

  spring应用上下文(ApplicationContext)生命周期控制注解驱动bean

  spring事件/监听机制(ApplicationEventMulticaster)加载或初始化组件

优质内容筛选与推荐>>
1、黑马----JAVA比较器:Comparable和Comparator
2、LAMP框架 apache PHP
3、第01组 Alpha冲刺(5/6)
4、EI901: C51 In-Circuit Programming
5、JS判断用户手机类型及是否是在微信客户端内部打开网页


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号