监听器
2022-01-01 19:01:51 0 举报
12312312
作者其他创作
大纲/内容
注册
invokeListener
判断source是否支持
依赖
GenericApplicationListener
调用或者执行发布具体的事件。
ApplicationListener实现
添加BeanFactory中的listene全限定类名
addApplicationListener(ApplicationListener)
EventObject
initApplicationEventMulticaster
事件
onApplicationEvent(event)
ApplicationListener观察者
onApplicationEvent(ApplicationEvent)
addApplicationListener
通过sorce过滤
被观察具体执行的动作
观察者,可能存在多个,接受不同的事件来做不同的处理工作
多播器
onApplicationEvent
AbstractApplicationEventMulticaster
ApplicationEvent事件对象
添加ApplicationContext中的listener对象
Set<ApplicationListener>
supportsEventType()
事件源
doInvokeListener
AbstractApplicationContext
registerListeners
SimpleApplicationEventMulticaster
getSource获取观察者类型
创建多播器SimpleApplicationEventMulticaster
ApplicationListener
通过事件source选取不同的观察者
getApplicationListeners
发布事件
ApplicationListener.List
ApplicationEventMulticaster
BeanFactory的Bdefintion
multicastEvent
把观察者遍历观察者通知消息的操作拿出来委托给一个多播器来进行消息通知,或者说通过观察者进行不同的操作
收藏
0 条评论
下一页