几张图了解spring doGetBean
一、doGetBean 图例
doGetBean 启程
org.springframework.beans.factory.support.AbstractBeanFactory#doGetBean
实例化前预处理
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory#createBean(java.lang.String, org.springframework.beans.factory.support.RootBeanDefinition, java.lang.Object[])
实例化
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory#doCreateBean
实例化后填充属性值
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory#populateBean
实例化填充后初始化 initializeBean 流程
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory#initializeBean(java.lang.String, java.lang.Object, org.springframework.beans.factory.support.RootBeanDefinition)
二、参考
Spring循环依赖及解决方式
Spring BeanWrapper分析
Spring 手动注册bean
Spring - lookup-method方式实现依赖注入
Spring生成bean的过程
Spring扩展点总结
三、总结
spring 代码较多,看着也比较头疼,可能看着看着就忘了… 毕竟开发框架、中间件 扩展的机会还是比较少,但是对于spring的使用还是必须铭记于心,本文主要是给自己总结~没事的时候回来看看。-- 2020-06-22(农历五月过两天) 于杭州