玖叶教程网

前端编程开发入门

简述spring bean的生命周期?(spring中bean的生命周期包括哪四个阶段)

概要流程

  1. 推断构造方法
  2. 实例化
  3. 填充属性,也就是依赖注入
  4. 处理Aware回调
  5. 初始化前,处理@PostConstruct注解
  6. 初始化,处理InitializingBean接口
  7. 初始化后,进行AOP

可以粗略概括为:创建前准备阶段、创建实例阶段、依赖注入阶段、容器缓存阶段和销毁实例阶段。

详细流程

1、实例化bean对象

通过反射的方式进行对象的创建,此时的创建只是在堆空间中申请空间,属性都是默认值

2、设置对象属性

? 给对象中的属性进行值的设置工作

3、检查Aware相关接口并设置相关依赖

? 如果对象中需要引用容器内部的对象,那么需要调用aware接口的子类方法来进行统一的设置

4、BeanPostProcessor的前置处理

? 对生成的bean对象进行前置的处理工作

5、检查是否是InitializingBean的子类来决定是否调用afterPropertiesSet方法

? 判断当前bean对象是否设置了InitializingBean接口,然后进行属性的设置等基本工作

6、检查是否配置有自定义的init-method方法

? 如果当前bean对象定义了初始化方法,那么在此处调用初始化方法

7、BeanPostProcessor后置处理

? 对生成的bean对象进行后置的处理工作

8、注册必要的Destruction相关回调接口

? 为了方便对象的销毁,在此处调用注销的回调接口,方便对象进行销毁操作

9、获取并使用bean对象

? 通过容器来获取对象并进行使用

10、是否实现DisposableBean接口

? 判断是否实现了DisposableBean接口,并调用具体的方法来进行对象的销毁工作

11、是否配置有自定义的destory方法

? 如果当前bean对象定义了销毁方法,那么在此处调用销毁方法

#spring##面试题##程序员##java##spring中bean的理解#

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言