SpringApplicationRunListeners v.s. ApplicationListener

时间:2018-02-07 12:58:07

标签: java spring spring-boot listener

我正在阅读SpringApplication的源代码,我发现了两种Listener

  • 有一个ApplicationListner列表作为用

    声明的类字段

    private List<ApplicationListener<?>> listeners

  • run方法中,我找到了SpringApplicationRunListeners

    声明

    SpringApplicationRunListeners listeners = getRunListeners(args);

它们之间有什么区别?

非常感谢。

1 个答案:

答案 0 :(得分:1)

ApplicationListner - 由应用程序事件侦听器实现的接口。

这可能有助于更好地了解什么是事件是春季应用https://spring.io/blog/2015/02/11/better-application-events-in-spring-framework-4-2

SpringApplicationRunListener - SpringApplication run方法的听众。将为每次运行创建一个新的SpringApplicationRunListener实例。

Spring Boot应用程序从Java main方法启动,您通常会执行SpringApplication.run(...)之类的操作。基本上,您可以使用该接口来处理Spring Boot App引导过程事件。