相关文章推荐
好帅的草稿本  ·  cygwin - ConEmu error ...·  9 月前    · 
好帅的草稿本  ·  Python onnx_export.py ...·  10 月前    · 
好帅的草稿本  ·  [Day 11] Angular 2 ...·  10 月前    · 
好帅的草稿本  ·  Python ...·  10 月前    · 
好帅的草稿本  ·  office2019安装Mathtype7. ...·  11 月前    · 
不羁的面包  ·  mac安装lxml-西瓜视频·  1小时前    · 
有腹肌的烈酒  ·  MAC ...·  1小时前    · 
无聊的豆浆  ·  独家!万顺叫车赴美上市·  1小时前    · 
腼腆的炒粉  ·  Supervised Learning ...·  2 小时前    · 

Bean的生命周期

Bean的生命周期包括四个阶段:

  • 实例化阶段(Instantiation):容器通过调用构造函数或者工厂方法来创建Bean的实例。

  • 属性赋值阶段(Populate properties):容器将相应的属性值设置给Bean的实例,可以通过setter方法、直接字段注入或者其他自定义的方式完成属性赋值。

  • 初始化阶段(Initialization):在Bean的属性赋值完成后,容器会调用相关的初始化方法(如果有的话),如实现了InitializingBean接口的afterPropertiesSet()方法,或者通过@Bean注解的initMethod属性指定的方法。开发者可以在初始化方法中进行一些额外的操作,例如数据校验、初始化资源等。

  • 使用阶段(In use):

  • 经过初始化阶段后,Bean进入可用状态,可以被容器及其他对象使用。

  • 销毁阶段(Destruction):当Bean不再被使用时,容器可以对其进行销毁操作。这包括调用实现了DisposableBean接口的destroy()方法,或者通过@Bean注解的destroyMethod属性指定的方法。开发者可以在销毁方法中释放资源、关闭连接等。

两种方式在Bean创建完后打印语句(Bean的初始化阶段)

实现InitializingBean接口:

 
推荐文章