Spring的元信息
2021-09-24 本文已影响0人
文萃北
BeanDefinition
BeanDefinition 是什么?
BeanDefinition 顾名思义就是对于Bean的一些基础定义信息。 比如 XML 中 <bean>的配置信息。Spring会根据BeanDefinition中的信息来创建Bean.
BeanDefinition 中包含以下元数据:
- Bean的全限定类名
- bean的行为配置元素。 scope (singleton,prototype), 生命周期回调的一些 方法 initmethodName,destroyMethodName等。
- bean的依赖信息 eg: parentName (父类名称,可为空),构造函数的参数, setter方法的参数等等。
BeanDefinition的继承关系
Bean的继承依赖关系.pngAbstractBeanDefinition
AbstractBeanDefinition 是 BeanDefinition接口的实现。由于BeanDefinition接口过于顶层, AbstractBeanDefinition 给很多属性都设置了默认值。方便建立子类。