Spring内部首先准备抽象接口定义规范
提取xml或者注解内部信息生成bean定义信息对象
BeanFactoryPoseProcessor
BeanFactoryPoseProcessor给spring工厂生成必要的环境对象也就是工厂参数,工厂反射bean定义信息对象必要参数
BeanFactiry通过反射机制
Class clazz = Class.forName("");Class clazz=类名.class;
Class clazz=对象名.getClass();
Constructor ctor = clazz.getDeclareConstructor(;Object obj =ctor.newlnstance);
实例化变为完整对象
实例化
是在堆中开辟一块空间,属性都为默认值需要进行初始化
初始化
填充bean定义信息对象中的Bean属性populate
执行Aware接口方法,此方法是针对Spring环境中需要的非自定义对象
例如:BeanFactory对象的set方法
执行初始化方法
AOP
before与after方法实现了BeanPostProcessor接口,主要针对Spring实现Bean的生命周期
当需要再普通对象中获取容器中的相关内部对象的时候,可以用Aware接口
PostProcessor
PostProcessor为扩展增强接口
BeanFactoryPostProcessor方法扩展增强BeanFactory对象
BeanPostProcessor方法增强Bean对象(AOP)
【增强方法为实现BeanFactoryPostProcessor与BeanPostProcessor接口】