源码深度解析Spring Bean的创建,手把手的一步一步带你看源码

在源码深度解析Spring Bean的加载 中对Bean的加载源码进行了梳理,在本文将对bean的创建进行梳理

在doGetBean()方法中createBean()方法准备创建bean,调用源码如下:
在这里插入图片描述
createBean() 方法的源码如下:
在这里插入图片描述
从代码中可以得出,createBean() 方法涉及4个步骤:
步骤一: 根据设置的class属性或者根据className来解析Class.

步骤二: 对override属性进行标记及验证.
在spring 配置中存在lookup-method和replace-method 两个配置功能,而这两个配置的加载其实就是将配置统一存放在BeanDefinition中methodOverrides属性中,prepareMethodOverrides()方法实现原理就是在bean实例化的时候如果检测到存在methodOverrides属性,会动态地为当前bean生成代理并使用对应的拦截器为bean做增强处理,代码如下:
在这里插入图片描述
在这里插入图片描述
此处方法设置得十分巧妙, 巧妙之处是Spring将一部分的方法匹配工作在这里完成, 如果当前类职工的方法只有一个的时候就设置重载方法没有被重载,这样在后续被调

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

弯_弯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值