Spring Bean的生命周期只有4个阶段:
- 实例化 Instantiation - 构造方法
- 属性赋值 Populate - setter方法的注入
- 初始化 Initialization
- 销毁 Destruction
初始化和销毁是用户能自定义扩展的两个阶段。
主要逻辑都在doCreate()方法中,逻辑很清晰,就是顺序调用以下三个方法,这三个方法与三个生命周期阶段一一对应:
- createBeanInstance() -> 实例化
- populateBean() -> 属性赋值
- initializeBean() -> 初始化
