Spring 之 BeanFactory 核心:getBean 方法的流程——前言

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ajianyingxiaoqinghan/article/details/81989735

Spring 之 BeanFactory 核心:getBean 方法的流程——前言

参考地址: 《Spring核心之BeanFactory 一张图看懂getBean全过程.》

前言

笔者最近在工作空闲时间研究 Spring 的生命周期部分,好奇之下也总结了《Spring 中 BeanFactory 的生命周期与源码解析(附例程)》。然而对于 Spring 框架如何获取一个 Bean 的过程,笔者并没有从源码级别实现理解。于是笔者便开始从 AbstractBeanFactory # doGetBean 方法进行研究。 即使将 doGetBean 方法阅读完毕,依旧没有完全明白 Bean 是如何从一个 XML 文件转换成具体的 Object 对象的,更何况中间还实现了依赖注入的思想。在翻阅资料的过程中,笔者翻阅到了一篇博文:《Spring核心之BeanFactory 一张图看懂getBean全过程.》,该文章开头一张惊天地泣鬼神的配图震惊到了笔者…… 于是笔者从该篇文章开始,按照该图的思路,进行逐步的分析。


按照该文的封页图的思路,可将 BeanFactory 创建对象分为四个主要流程:

  1. 获取 Bean:最外层方法
    • AbstractBeanFactory # doGetBean
  2. 创建 Bean:
    • AbstractAutowireCapableBeanFactory # createBean
    • AbstractAutowireCapableBeanFactory # doCreateBean
    • AbstractAutowireCapableBeanFactory # createBeanInstance
  3. 填充 Bean:
    • AbstractAutowireCapableBeanFactory # populateBean
  4. 初始化 Bean:
    • AbstractAutowireCapableBeanFactory # initializeBean

本系列文章按照上述行文思路进行书写。

前言部分以《Spring核心之BeanFactory 一张图看懂getBean全过程.》的封页图镇尾。

原谅我当时看到这张图就跪了下来……

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券