Spring源码
IOC;使用反射创建bean对象,


三级缓存:三个map结构,解决循环依赖
一级缓存

二级缓存

三级缓存

springboot有内置的tomcat服务器
bean的定义信息

解析XML或者注解(bean的定义信息)


接口和抽象类的区别:
接口:自上向下;抽象类:自下向上。
通过反射创建对象:

由BeanDefinition到bean是通过反射来完成

bean的生命周期:

beanfactorypostprocessors的作用: 占位符到具体值的替换


下一步

完整如下:

BeanDefinitionMap存储BeanDefinition对象


Map的详细西你想

BeanFactory是顶级接口,BeanFactoryPostProcessor用于替换beanDefinition中占位符为具体的值;通过反射创建bean对象,给bean对象初始化值。

自定义postprofessor

研究源码的好处:出现问题,可以快速定位,并给出解决方案。
源码debug:


浙公网安备 33010602011771号