BeanDefinition是spring bean创建的元属性,bean的创建和属性配置都和其相关。一般注册到spring容器的beanDefinition类都是会被自动创建,我们可以通过创建并注册到容器来实现特定功能的实现。
类介绍public interface BeanDefinition extends AttributeAccessor, BeanmetadataElement {...}
类图如下:
BeanDefinition 元信息
关键类介绍
- RootBeanDefinition – bean 创建前的最终定义、不允许被修改
- GenericBeanDefinition-- 通用 beanDefinition
- AnnotatedBeanDefinition --注解类的 beanDefinition
- ScannedGenericBeanDefinition --扫描@Component - - -@service 等注解生成的 BeanDefinition
- ConfigurationClassBeanDefinition --扫描 @Bean @Configuration 生成的 beanDefinition
方式 1:
DefaultListableBeanFactory.registerBeanDefinition
方式 2:
BeanDefinitionReaderUtils.registerWithGeneratedNameBeanDefinition 创建方式
1、BeanDefinitionBuilder
2、通过 AbstractBeanDefinition 以及派生类
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)