SpringIOC图示

Spring内部首先准备抽象接口定义规范

提取xml或者注解内部信息生成bean定义信息对象

xml
抽象接口定义规范
注解

BeanFactoryPoseProcessor

BeanFactoryPoseProcessor给spring工厂生成必要的环境对象也就是工厂参数,工厂反射bean定义信息对象必要参数

BeanFactoryPoseProcessor
BeanFactoryPoseProcessor
BeanFactoryPoseProcessor
抽象接口定义规范BeanDefinitionReader
Sping容器内部bean定义信息对象BeanDefinition
BeanFactiry

BeanFactiry通过反射机制

Class clazz = Class.forName("");Class clazz=类名.class;
Class clazz=对象名.getClass();
Constructor ctor = clazz.getDeclareConstructor(;Object obj =ctor.newlnstance);

反射代码调用
实例化
初始化阶段
填充属性
执行Aware接口方法
before
init-method
after
完整对象
before方法
BeanPostProcessor
after方法
AOP
动态代理
jdk
cglib

实例化变为完整对象

实例化

是在堆中开辟一块空间,属性都为默认值需要进行初始化

初始化

填充bean定义信息对象中的Bean属性populate
执行Aware接口方法,此方法是针对Spring环境中需要的非自定义对象
例如:BeanFactory对象的set方法
执行初始化方法

AOP

before与after方法实现了BeanPostProcessor接口,主要针对Spring实现Bean的生命周期
当需要再普通对象中获取容器中的相关内部对象的时候,可以用Aware接口

PostProcessor
BeanFactoryPostProcessor
BeanPostProcessor

PostProcessor

PostProcessor为扩展增强接口
BeanFactoryPostProcessor方法扩展增强BeanFactory对象
BeanPostProcessor方法增强Bean对象(AOP)

【增强方法为实现BeanFactoryPostProcessor与BeanPostProcessor接口】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值