【Spring Bean的生命周期】

Spring Bean的生命周期四个阶段

  1. 实例化 Instantiation
  2. 属性赋值 Populate
  3. 初始化 Initialization
  4. 销毁 Destruction

影响多个Bean的接口有二个,InstantiationAwareBeanPostProcessor作用于实例化阶段的前后,BeanPostProcessor作用于初始化阶段的前后。

在这里插入图片描述
只调用一次的接口,有Aware类型的接口和生命周期接口二种。
aware类型的接口可以分为二组:
Aware Group1

  1. BeanNameAware
  2. BeanClassLoaderAware
  3. BeanFactoryAware

Aware Group2

  1. EnvironmentAware
  2. EmbeddedValueResolverAware能够获取Spring EL解析器,用户的自定义注解需要支持spel表达式的时候可以使用。
  3. ApplicationContextAware(ResourceLoaderAware\ApplicationEventPublisherAware\MessageSourceAware)
    ApplicationContext是一个复合接口,返回值都是当前的ApplicationContext对象。

生命周期的接口

  1. InitializingBean:对应生命周期的初始化阶段,Spring将调用他们的afterPropertiesSet()方法。如果bean使用init-method声明了初始化方法,该方法也会被调用。
  2. DisposableBean:对应生命周期的销毁阶段,Spring将调用它的destory()接口方法,同样,如果bean使用了destory-method 声明销毁方法,该方法也会被调用。

大致流程

Spring Bean的生命周期

猜你喜欢

转载自blog.csdn.net/java_wxid/article/details/123224900