spring源码解析(二)

本文详细介绍了IOC容器初始化的三个核心步骤:BeanDefinition的资源定位、载入及注册过程。定位阶段利用ResourceLoader通过Resource接口完成;载入阶段将用户定义的Bean转化为内部数据结构BeanDefinition;注册阶段则通过BeanDefinitionRegistry接口将BeanDefinition向IOC容器注册。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

IOC容器的初始化包括

  1. BeanDefinition的Resource定位
  2. 载入
  3. 注册

我们可以看到定位和载入过程中接口调用。
Spring在实现中是把三个过程分开并使用不同的模块来完成,这样方便用户剪裁和扩展。
1: BeanDefinition的资源定位由ResourceLoader通过Resource接口完成。
比如文件系统中定义信息可以用:FileSystemResource,ClassPathResource来使用等等。
2:BeanDefinition的载入过程中把用户定义的Bean表示成IOC的内部数据结构BeanDefinition。
3:向IOC注册BeanDefinition的过程。这是通过BeanDefinitionRegistry接口实现完成的,这注册过程吧载入过程中得到BeanDefinition向IOC注册。IOC内部是通过HashMap来持有BeanDefinition数据的。
值得注意的是IOC容器初始化一般不包含Bean依赖注入的实现,它是第一次通过容器getBean获取Bean时。

BeanDefinition的Resource定位

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值