1.刷新容器
2.在refresh()方法中 执行
// Instantiate all remaining (non-lazy-init) singletons.
// 初始化剩下的非延迟加载(non-lazy-init)单例beans
finishBeanFactoryInitialization(beanFactory);
3.在finishBeanFactoryInitialization()方法中
image image image image上面的方法不是关注的重点------------------------
image
populateBean方法是对Bean的属性进行赋值,之后执行initializeBean方法。
在initializeBean()方法中 关注 1 applyBeanPostProcessorBeforeInitialization()
2 invokeInitMehods()
3 applyBeanPostProcessorAfterInitialization()
image
紧接着后面
imageapplyBeanPostProcessorBeforeInitialization()方法是执行所有后置处理器before方法
imageinvokeInitMehods方法是执行Bean的初试化方法
applyBeanPostProcessorAfterInitialization()方法是执行所有后置处理器的after方法
网友评论