java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Spring创建Bean

Spring创建Bean的流程分享

作者:YogaK

Spring创建Bean流程主要包括实例化、属性赋值、初始化和销毁四个阶段,实例化通过new关键字进行,属性赋值通过BeanDefinition获取并注入,处理Aware接口以获取Spring容器资源,调用InitializingBean和init-method进行初始化,最后通过DisposableBean和destory-method进行销毁

Spring创建Bean流程


大致步骤

简单来说:Bean会经历四个阶段: 实例化–》属性赋值–》初始化–》销毁

具体来说:

像容器申请一个Bean的时候

当容器在初始化一个Bean的时候,发现该Bean还依赖另一个Bean。(在BeanDefinition中找到)

各个接口介绍

1.什么是BeanDefinition?

​ BeanDefinition 是定义 Bean 的配置元信息接口

2.Aware接口

该接口是一个标识接口,具体的方法需要子类自己去实现。

Aware类型的接口的作用就是让我们能够拿到Spring容器中的一些资源。

基本都能够见名知意,Aware之前的名字就是可以拿到什么资源,例如BeanNameAware可以拿到BeanName,以此类推。

调用时机需要注意:所有的Aware方法都是在初始化阶段之前调用的!

3.BeanPostProcessor

做通知。

4.initializingBean

afterPropertiesSet这个方法可以用在一些特殊情况中,也就是某个对象的某个属性需要经过外界得到。

比如说查询数据库等方式,这时候可以用到spring的该特性,只需要实现InitializingBean即可

5.init-method

用来替代继承 InitializingBean接口

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文