可以看一下这个:Spring Bean生命周期,好像人的一生
1.实例化bean,反射的方式创建对象
2.填充bean的属性,populateBean,循环依赖的问题(三级缓存)
3.调用aware接口,对象属性invokeAwareMethod
4.调用beanPostProcessor 前置处理器(设置applicationContext,enviroment ,resourceLoader)
5.调用init-method方法,invokeInitMethod()
6.调用beanPostProcessor后置处理器(Spring APO就是在这里实现)
7.获取到完整bean对象,通过getBean获取对象
8.使用完成之后,销毁对象distoryMethod