bean标签的解析及注册-BeanDefintion
1、介绍
BeanDefintion是一个接口,主要有三种实现ChildBeanDefinition(子bean)、GenericBeanDefinition(创建实例)、RootBeanDefinition(父bean)
1.2、创建实例GenericBeanDefinition
代码createBeanDefinition作用就是实现该功能
1.3、createBeanDefinition创建承载属性实例
1.4、BeanDefinitionReaderUtils工具类
2、解析各种属性
创建bean实例后,需要解析各种属性parseBeanDefinitionAttributes
2.1、parseBeanDefinitionAttributes方法
主要对scope、singleton、abstract、lazy-init、autowire、dependency-chenk、depends-on、autowire-candidate、primary、init-method、destroy-method、factory-method、factory-bean解析
3、解析子元素Meta
主要是获取当前节点的所有子元素,然后提取meta,然后使用key、value构造BeanMetadataAttribute、记录信息