Spring bean生命周期

Spring生命周期图

Spring bean生命周期

个人大白话理解

创建类: 当需要实例化的时候,首先给类创建地址,填充属性->给bean设置名称->设置BeanFactory(调用BeanFactoryAware),以及ApplicationContext(上下文,调用ApplicationContextAware)->增强器BeanPostProcess(环绕类的初始化)->InitalizingBean(主要实现afterPropertiesSet方法,顾名思义在参数填充之后调用)->调用类初始化方法。

销毁类: 调用DisposableBean方法的destory方法

相关注解

InitializingBean

如下面显示InitalizingBean是在BeanFactory初始化bean的时候回调。
Spring bean生命周期

PostConstruct

@PostConstruct跟InitalizingBean一样在初始化的时候进行回调。

总结: 上面两个常用于初始化类的相关自定义属性(业务开发上)
但是InitalizingBean不能初始化static静态属性比较可惜。

*Aware

实现ApplicationContextAware ,调用setApplicationContext来获得上下文对象,像策略模式,获得相关接口的实现类。

BeanPostProcessor

实现BeanPostProcessor ,在类初始化前后干点什么,西西~

DisposableBean

实现DisposableBean ,在销毁类的时候进行调用destory方法

参考博客