从parentBeanFactory中获取,并且处理循环依赖的问题:
org.springframework.beans.factory.support.AbstractBeanFactory.java中
doGetBean方法,
@SuppressWarnings("unchecked")
protected <T> T doGetBean(final String name, @Nullable final Class<T> requiredType,
@Nullable final Object[] args, boolean typeCheckOnly) throws BeansException
部分代码块如下:
接下来看 registerDependentBean的代码:在org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.java中:
源码分析如下:
接着往下分析代码:
这里分三种情况来创建实例,分别是单例,原型,和其他scope的创建,我们将在下一篇博客中详细介绍单例的创建,其他的就略去了。