DerekYRC / mini-spring

mini-spring是简化版的spring框架,能帮助你快速熟悉spring源码和掌握spring的核心原理。抽取了spring的核心逻辑,代码极度简化,保留spring的核心功能,如IoC和AOP、资源加载器、事件监听器、类型转换、容器扩展点、bean生命周期和作用域、应用上下文等核心功能。

Home Page:https://github.com/DerekYRC/mini-spring

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

关于getBean返回值的一个问题

gxhao opened this issue · comments

commented

如题,在Application-context分支下的AbstractApplicationContext的refresh方法会创建beanFactory并加载bean的属性,之后再实例化bean时执行preInstantiateSingletons方法。
这个方法我有一点看不懂,beanDefinitionMap中已经有四个对象(person、car、customBeanFactoryPostProcessor、customerBeanPostProcessor)。之后再引用getBean方法返回DefaultListableBeanFactory的意义是什么?
QQ图片20210801171145

此处执行getBean方法是为了提前初始化bean实例哈