ApplicationListener打开方式

简介:

ApplicationListener也是Spring拓展接口之一,他加载的顺序在InitializingBean afterPropertiesSet之后,可能在某些场景我们依赖的组件是在Spring生命周期InitializingBean这一环节加载的,所以我们无法在InitializingBean这一层拿到依赖的组件实例,这时候可以使用ApplicationListener<ContextRefreshedEvent>去嵌入 Spring生命周期靠后的流程,继续我们缓存预热等操作。



11772383-86e8641263b5006a.png
11772383-647f63cd7a271d73.png
11772383-b885db1883c3aea9.png
11772383-e7c3874e4c1f0601.png


如上,刚好证明了Spring的加载顺序,所以这是一种用法。

当然,ApplicationListener本质上是事件监听器,泛型里填入的是具体的事件,是一种生产者消费者模式,当Spring完成特定的事件就会触发当前事件的监听器去处理,思想是一种事件驱动的思想。

我们只不过利用了这个插拔的特性,选择在生命周期某个事件中,加入我们的业务操作。

当然,我们也可以编写自己的事件以及监听,然后去使用它,这些Spring都是天然支持的。

猜你喜欢

转载自blog.csdn.net/weixin_34209851/article/details/87601977