spring IOC创建Bean流程

1.现在说明下真正创建Bean过程的主流程,下面先贴出源码:

org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory#doCreateBean

1.对象实例化,内部还有一些出来构造器选择,构造器参数解析的处理,处理完后会进行缓存到BeanDefination中

spring IOC创建Bean流程

2. 属性填充和解析,还有一些init方法的调用

spring IOC创建Bean流程

3.调用aop方法过程

spring IOC创建Bean流程 2.思考自动注入过程autowired

1.自动注入也是在populateBean进行处理,然后进行实例化

spring IOC创建Bean流程

 2.根据类型注入时,是根据类型查找所有的的符合该类型的beanName,然后逐一进行getBean(name)调用,此过程也会创建bean的代理,那么此时就会注入代理对象,属性的最后赋值也是通过调用反射进行。