贯穿bean生命周期的9次BeanPostProcess的执行
1、InstantiationAwareBeanPostProcessor,如果此处返回了bean实例,将直接返回,不会再走下面的doCreateBean流程

2、SmartInstantiationAwareBeanPostProcessor.determineCandidateConstructors(),决定用哪个构造方法实例化

--------------------------------------------------------------------实例化------------------------------------------------------------------------
3、MergedBeanDefinitionPostProcessor.postProcessMergedBeanDefinition(),解析并缓存注解信息

4、InstantiationAwareBeanPostProcessor,是否要进行属性注入

--------------------------------------------------------------------属性注入------------------------------------------------------------------------
5、SmartInstantiationAwareBeanPostProcessor,用于循环依赖时,提前暴露动态代理对象

6、InstantiationAwareBeanPostProcessor.postProcessPropertyValues(),解析@Autowired和@Resource注解
7、依次回调bean后置处理器的postProcessBeforeInitialization方法

--------------------------------------------------------------------初始化------------------------------------------------------------------------
8、BeanPostProcess的postProcessAfterInitialization方法,aop创建动态代理的地方
9、DestructionAwareBeanPostProcessor,注册销毁方法

浙公网安备 33010602011771号