spring BeanFactory
DefaultListableBeanFactory
从后开始往前捋一遍
XmlBeanFactory 由于已经是@Deprecated,所以就不考虑了,因为有ClassPathXmlApplicationContext。
各个接口/类的作用
BeanDefinitionRegister
名称 | 类型 | 继承或实现 | 作用 | 方法 | 属性 |
---|---|---|---|---|---|
AliasRegister | interface | null | Common interface for managing aliases. Serves as super-interface for {@link BeanDefinitionRegistry}/用于管理别名,作为{@link BeanDefinitionRegistry}的超接口 | 无 | |
SimpleAliasRegister | class | implements AliasRegister | Simple implementation of the {@link AliasRegistry} interface.Serves as base class for {@link BeanDefinitionRegistry} implementations /作为AliasRegistry的简单实现,作为实现了{@link BeanDefinitionRegistry}接口的类的基础类(DefaultListableBeanFactory的祖先是SimpleAliasRegister类且实现了BeanDefinitionRegister接口) | 无 | |
BeanDefinitionRegistry | interface | extends AliasRegister | 用于保存bean定义的注册中心的接口,如RootBeanDefinition和ChildBeanDefinition实例。通常由beanfactory实现,在内部使用AbstractBeanDefinition层次结构。 这是Spring’s bean factory包中唯一一个封装bean定义的注册的接口。标准的BeanFactory接口只包含对完全配置的工厂实例的访问。Spring的bean definition readers期望工作在这个接口的实现上。在Spring core中已知该接口的实现有DefaultListableBeanFactory和GenericApplicationContext。 | 无 |
ConfigurableListableBeanFactory
ConfigurableListableBeanFactory继承了 ListableBeanFactory, AutowireCapableBeanFactory, ConfigurableBeanFactory这三个接口,分别提供 列举所有Bean实例的能力、自动注入Bean的能力、配置BeanFactory的能力。
1.ListableBeanFactory
- 类型:接口
- 继承或实现:继承 BeanFactory接口
- 作用: 列举所有Bean实例的能力
- 方法、属性、构造器:
- 其他
2.AutowireCapableBeanFactory
- 类型:接口
- 继承或实现:继承 BeanFactory接口
- 作用: 自动注入Bean的能力
- 方法、属性、构造器:
- 其他
3.ConfigurableBeanFactory
- 类型:接口
- 继承或实现:继承 HierarchicalBeanFactory, SingletonBeanRegistry接口 ,其中HierarchicalBeanFactory继承BeanFactory接口
- 作用: 配置BeanFactory的能力
- 方法、属性、构造器:
- 其他
提供除了bean factory client 在BeanFactory接口中的方法之外 配置bean factory的工具。
o(︶︿︶)o 未完待续
(˘•ω•˘) 未完待续