getBean()方法可以认为是Spring框架的核心之一,其比较复杂,涉及大量类的合作。我们先不去进入方法内部,现在外面,看看大致逻辑,如下:

提示:
    在refresh()中调用finishBeanFactoryInitialization()中触发的。---第11步

下图是实例化过程主流程:

查看大图

Bean实例生成

下面这张代码截图比较有趣,会发现类似的概念,在这里碰头了:

查看大图

Bean实例生成
下面这张代码截图提升了性能:

查看大图

Bean实例生成

以上是Bean实例生成的主要逻辑。真正生成Bean的地方在getSingleton()中调用的createBean()方法中,下面以获取singleton作用域Bean的生成过程,具体看下实现过程:近看Bean实例生成

快速导航: