理解IoC容器初始化

问题:当自己面试或者背诵八股文时,会背到各种各样的spring底层的东西,自己越看越迷糊。

OS:不知道兄弟们是不是也会这样?如果大家没有说明我太菜了。

原因:就是自己学的框架越来越多,很多框架都把底层的细节给屏蔽了,所以久而久之我们只会使用接口去实现业务逻辑而忽略底层细节的实现。比如IoC容器的初始化?怎么将bean加载到容器中的。

如果刚接触spring,可能会学到如下:

但是久而久之大家就忘了这些东西。其中IOC的初始化就和上述代码相关。

1、从XML中读取配置文件(大家想一想对不对,之前用spring的时候是不是写了很多关于bean的配置文件,还要去读取它。只是现在的springboot已经将bean的读取大多数都集中在注解层面了,所以大家才会忽略很多细节);

2、解析bean标签为BeanDefinition(读取的bean文件,那么交给谁存储呢?就是BeanDefinition)

3、将BeanDefinition注册到BeanDefinitionMap中。(为什么需要这一步呢?因为你存储好了bean,那么在你使用它的时候你怎么才能能找到它呢?你需要将它存储在BeanDefinitionMap中。BeanDefinitionMap是一个map,键值对,最后你可以根据map的key值找到你想要的bean)

4、BeanFactory根据BeanDefinition的信息去初始化和实例化bean。

BeanFactory大家都了解,它是管理bean的容器。

到此,IoC容器初始化整体流程就是这样!

  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值