BeanDefinition:
描述一个bean实例有哪些属性值、构造器参数值以及一些其他bean相关信息
比较常用的BeanDefinition实现类为GenericBeanDefinition,GenericBeanDefinition的优点是它允许动态定义父依赖项,而不是将该角色“硬编码”为RootBeanDefinition定义。
类图结构如下:
扩展:
BeanDefinitionBuilder:
用来创建AbstractBeanDefinition的工具类,对AbstractBeanDefinition的操作都通过该类
BeanDefinitionRegistry:
用来注册BeanDefinition,DefaultListableBeanFactory实现该接口,springboot默认注册BeanDefinition使用的是DefaultListableBeanFactory