首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >SpringBean 什么时候放入earlySingletonObjects?

SpringBean 什么时候放入earlySingletonObjects?

提问于 2020-05-18 18:54:11
回答 1关注 0查看 1.2K

参考文章:Spring IOC 容器源码分析

第3小节中

代码语言:javascript
复制
                   // 提前曝光 bean 实例(raw bean),用于解决循环依赖
                    singletonObject = singletonFactory.getObject();
                    
                    // 将 singletonObject 放入缓存中,并将 singletonFactory 从缓存中移除
                    this.earlySingletonObjects.put(beanName, singletonObject);
                    this.singletonFactories.remove(beanName);

实例化 A 这个bean以后【此时对象内部所有属性都为null】,已经将对象放入earlySingletonObjects【二级缓存】,并且将singletonFactories【三级缓存】中对应bean的factories删除

而后才会执行populateBean函数

而后再初始化B 这个bean时,里面的A 应该直接从 earlySingletonObjects【二级缓存】里面找啊,不应该从 singletonFactories【三级缓存】

回答

和开发者交流更多问题细节吧,去 写回答
相关文章

相似问题

相关问答用户
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档