Spring Bean生命周期

原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11450415.html

Spring Bean生命周期比较复杂,可以分为创建和销毁两个过程。

首先,创建Bean会经过一系列的步骤,主要包括:

  • 实例化Bean对象。

  • 设置Bean属性。

  • 如果通过各种Aware接口声明了依赖关系,则会注入Bean对容器基础设施层面的依赖。具体包括BeanNameAware、BeanFactoryAware和ApplicationContextAware,分别会注入Bean ID、Bean Factory或者ApplicationContext。

  • 调用BeanPostProcessor的前置初始化方法postProcessBeforeInitialization。

  • 如果实现了InitializingBean接口,则会调用afterPropertiesSet方法。

  • 调用Bean自身定义的init方法。

  • 调用BeanPostProcessor的后置初始化方法postProcessAfterInitialization。

  • 创建过程完毕。

第二,Spring Bean的销毁过程会依次调用DisposableBean的destroy方法和Bean自身定制的destroy方法。

原文地址:https://www.cnblogs.com/agilestyle/p/11450415.html