48、[源码]-Spring容器创建-初始化事件派发器、监听器等

8、initApplicationEventMulticaster();初始化事件派发器;
  1. 获取BeanFactory
  2. 从BeanFactory中获取applicationEventMulticaster的ApplicationEventMulticaster;
  3. 如果上一步没有配置;创建一个SimpleApplicationEventMulticaster
  4. 将创建的ApplicationEventMulticaster添加到BeanFactory中,以后其他组件直接自动注入
9、onRefresh();留给子容器(子类)
  1. 子类重写这个方法,在容器刷新的时候可以自定义逻辑;
10、registerListeners();给容器中将所有项目里面的ApplicationListener注册进来;
  1. 从容器中拿到所有的ApplicationListener getBeanNamesForType(ApplicationListener.class, true, false);
  2. 将每个监听器添加到事件派发器中;getApplicationEventMulticaster().addApplicationListenerBean(listenerBeanName);
  3. 派发之前步骤产生的事件;getApplicationEventMulticaster().multicastEvent(earlyEvent);

最新文章

  1. struts2学习笔记--动手搭建环境+第一个helloworld项目
  2. Python笔记(3)迭代器与生成器
  3. Arcgis10安装说明
  4. 烂泥:KVM利用LVM快照快速部署虚拟机
  5. PHP无限级分类-递归(不推荐)
  6. zookeeper系列之九—zookeeper数据模型
  7. 数据库 CHECKDB 发现了x个分配错误和 x 个一致性错误
  8. Live555中RTP包的打包与发送过程分析
  9. django HTTP请求(Request)和回应(Response)对象
  10. Windows下将硬盘由MBR转为GPT
  11. java.lang.NoSuchFieldError: deferredExpression解决
  12. 我的TDD实践---UnitTest单元测试
  13. php扩展memcache的安装
  14. gulp相关知识(2)
  15. VB6之借助zlib实现gzip解压缩
  16. profile bashrc bash_profile之间的区别和联系
  17. Spring cloud的Maven插件(一):repackage目标
  18. springboot-01 helloworld
  19. Session Cookies随笔
  20. maven 知识

热门文章

  1. [转帖]QC 和 PD:关于你所不知道的快充
  2. 如何将生产环境的服务Docker镜像拉取到本地进行调试
  3. 题解 CF1216B 【Shooting】
  4. CSS样式三种形式222
  5. Redis string操作命令
  6. PAT甲级题分类汇编——排序
  7. 使用Docker搭建svn服务器教程
  8. 括号匹配问题 —— Deque双端队列解法
  9. 全栈项目|小书架|服务器开发-NodeJS 项目分包
  10. rabbitmd