春豆的生命周期

时间:2018-02-07 18:01:57

标签: spring

我开始知道IOC容器负责创建bean,注入依赖项和生命周期管理。那么,IOC容器的内部实现是什么?在创建bean之后和销毁之前会发生什么过程?

1 个答案:

答案 0 :(得分:6)

  1. Spring实例化bean。
  2. Spring注入值和bean     引用bean的属性。
  3. 如果bean实现了     BeanNameAware,Spring将bean的ID传递给set-BeanName()     方法
  4. 如果bean实现了BeanFactoryAware,则Spring会调用     setBeanFactory()方法,传入bean工厂本身。

  5. 如果bean实现ApplicationContextAware,则Spring调用set-     ApplicationContext()方法,传入对封闭的引用     应用程序上下文。

  6. 如果bean实现了BeanPostProcessor     接口,Spring调用它的后ProcessBeforeInitialization()     方法

  7. 如果bean实现了InitializingBean接口,     Spring调用它的after- PropertiesSet()方法。同样,如果     bean是用initmethod声明的,然后是指定的     初始化方法被调用。

  8. 如果bean实现了     BeanPostProcessor,Spring调用它的postProcess-     AfterInitialization()方法。

  9. 此时,bean已准备就绪     由应用程序使用并保留在应用程序上下文中     直到应用程序上下文被销毁。

  10. 如果豆      实现DisposableBean接口,Spring调用它的destroy()      方法。同样,如果使用destroy-method声明bean,      调用指定的方法。

  11. enter image description here