阿里P8级工程师spring解读

BeanDifinition源码分析

一个BeanDefinition描述了一个bean的实例,包括属性值,构造方法参数值和继承自它的类的更多信息。BeanDefinition仅仅是一个最简单的接口,主要功能是允许BeanFactoryPostProcessor 例如PropertyPlaceHolderConfigure 能够检索并修改属性值和别的bean的元数据(译注)。

ROLE_SUPPORT =1实际上就是说,我这个Bean是用户的,是从配置文件中过来的。

ROLE_INFRASTRUCTURE = 2就是我这Bean是Spring自己的,和你用户没有一毛钱关系。

上面是BeanDifinition的一些基本属性信息,一个就是标识下当前Bean的作用域,另外就是标识一下这个Bean是内部的还是外部的。下面来看这个接口为其子类都提供了哪些具体的行为方法:

1.当前Bean父类名称get&set方法

.
2.当前Bean的className get&set方法

.
3.Bean的作用域get&set方法

.
4.懒加载的get&set方法

.
5.依赖关系设置

.
6.是否是自动转配设置

.
7.主候选Bean

.
8.定义创建该Bean对象的工厂类

.
9.创建该Bean对象的工厂方法

.
10.返回此bean的构造函数参数值。

.
11.获取普通属性集合

.
12.当前Bean的基本特性

.
13.当前Bean的应用

.

.
从上面的属性和方法分析可以看出,BeanDefinition对于一个Bean的描述做了较为完整的一套约束。这为后续的子类提供的最基本的职责和属性。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值