spring中事件发布设计与实现

spring中的事件发布框架依赖于三个抽象,ApplicationEvent,ApplicationListener,ApplicationEventPublisher。ApplicationEventPublisher的实现类依赖于AbstractApplicationContext,当中又依赖于ApplicationEventMulticast,其发布事件依赖于是否有设置事件监听器执行器,如果有设置,执行事件监听器就异步的,否则就是同步的。

其类关系图为

spring中事件发布设计与实现