•prepareRefresh() refresh之前的一些准备
•obtainFreshBeanFactory() 获取beanFactory实例的
•prepareBeanFactory() 对beanFactory进行相关的设置(classloader,设置解析表达式)
•postProcessBeanFactory() beanFactory的一些后置操作
•invokeBeanFactoryPostProcessors() 调用工厂后处理器,对带有@PriorityOrder,@Order,和没有这两个注解的类进行先后加载顺序的排序注册,处理bean标签,扫描bean文件,解析成bean,加载到bean容器中。(以ConfigurationClassParser类中的doProcessConfigurationClass为例,会扫描包中带有注解的类进行加载)。
•registerBeanPostProcessors() 找出实现BeanPostProcessor的类并注册到beanFactory中
•initMessageSource() 初始化国际化相关的属性
•initApplicationEventMulticaster() 初始化事件广播器,用于事件发布
•onRefresh()
•registerListeners() 注册监听器
•finishBeanFactoryInitialization() 实例化beanFactory中已经被注册未被实例化的所有实例
•
•finishRefresh() 完成实例化后做其他操作,比如初始化生命周期
欢迎广大网友提出修改意见,后续会对各个方法内进行解析。