Spring框架中不同类型的事件

Posted 努力追上曾经的自己

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring框架中不同类型的事件相关的知识,希望对你有一定的参考价值。

ContextRefreshedEvent,ApplicationContext初始化或者被更新是会触发,ConfigurableApplicationContext接口中的refresh()方法被调用会触发

ContextStartedEvent,,ConfigurableApplicationContext接口中的start()方法被调用会触发

ContextStoppededEvent,,ConfigurableApplicationContext接口中的stop()方法被调用会触发

ContextClosedEvent,AppliactionContext被关闭时触发该事件,所有容器管理的单例bean被销毁。

RequestHandledEvent,当一个http请求结束时触发该事件

 

如果一个bean实现了ApplicationListener接口,当一个ApplicationEvent被发布后,遍历所有监听器,对于每一个监听器来说其实都可以获取到监听事件,但是是否进行处理则由事件监听器来决定,如果要处理,使用onApplicationEvent()方法来进行监听器的处理

  自定义监听事件,需要ApplicationEvent接口,ApplicationContext使用publishEvent()方法来发布事件。

以上是关于Spring框架中不同类型的事件的主要内容,如果未能解决你的问题,请参考以下文章

Spring5源码解析-Spring框架中的事件和监听器

ssm框架中怎么让spring扫描多个包

Spring 框架中注释驱动的事件监听器详解

Spring 4.2框架中注释驱动的事件监听器详解

如何在spring框架中解决多数据源的问题

spring cloud bus原理总结