Spring源码系列(6)- bean的加载(二)

我们接着上一章的内容继续讲解。

这里说点题外话,最近一个是因为五一,再一个因为工作的原因,还有自己比较懒吧,都想放弃了,不想写了。。感觉没什么用。但是又想到,不能半途而废,最起码这一系列得写完吧。感觉没什么用,是不是写的还是太少?这样安慰自己。哈哈。。希望能给坚持不下去的童鞋带来一些动力。

还是照样,贴代码。
在这里插入图片描述
本节重点讲标红的这一句代码。下一节我们再讲解三级缓存(getSingleton这个方法)的内容。
在这里插入图片描述
这行上边的代码无需多解释,我们着重看红色部分。点进去,进入
在这里插入图片描述
前面几行代码主要是判断bean name是否是&开头的,bean的实例是否是FactoryBean。

如果beanName不是以&开头,并且beanInstance是FactoryBean类型的,才能往下走。一般情况下,都会是这种情况。

1、同样,从缓存(这里是取类的实例,和之前的缓存不一样,之前的缓存是factory实例)里面取实例,如果取不到,则进入getObjectFromFactoryBean方法。
在这里插入图片描述
这个方法应该比较简单。概括的说就是调用Factorybean中的getObject()方法获取实例,然后放到factoryBeanObjectCache缓存中。
看一下doGetObjectFromFactoryBean这个方法的内容。
在这里插入图片描述
重点就是这行,还是很简单的吧。

好了,今天的内容比较简单,下一节我们把著名的spring三级缓存讲讲。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值