Ioc容器
Ioc容器主要完成了对象的创建和依赖的管理注入等;所谓控制反转,就是原先在代码中需要实现的对象创建、依赖,反转给容器帮忙实现。
Spring IOC容器抽象的几个主要接口:
- Resource
- BeanDefinition
- BeanDefinitionReader
- BeanFactory
- ApplicationContext
- ServletContextResource
- InputStreamResource
- ByteArrayResource
1、Resource
对资源的一种抽象实现,其每一个实现都代表一种不同的资源,如ClasspathResource,URLResource,FileSystemResource。
2、BeanDefination
用来抽象和描述一个具体的bean对象,是描述一个bean对象的基本数据结构。BeanDefination主要定义了bean的名字,bean的范围,bean的依赖,优先级以及描述等。
3、BeanDefinitionReader
BeanDefinitionReader将外部资源对象描述的bean定义描述为统一的内部结构BeanDefination,对应不同的描述需要有不同的Reader,如XmlBeanDefinitionReader。
4、BeanFactory
BeanDefinition是它的基本数据结构。它维护一个BeanDefinitions
Map,并可根据BeanDefinition的描述进行bean的创建和管理。
5、ApplicationContext
应用上下文,也叫Spring容器,