Spring - IoC 容器



Spring 容器是 Spring 框架的核心。容器将创建对象、将它们连接在一起、配置它们,并管理它们从创建到销毁的整个生命周期。Spring 容器使用 DI 来管理构成应用程序的组件。这些对象称为 Spring Bean,我们将在下一章中讨论。

容器通过读取提供的配置元数据来获取有关要实例化、配置和组装哪些对象的指令。配置元数据可以用 XML、Java 注解或 Java 代码表示。下图显示了 Spring 工作方式的高级视图。Spring IoC 容器利用 Java POJO 类和配置元数据来生成完全配置且可执行的系统或应用程序。

Spring IoC Container

Spring 提供以下两种不同类型的容器。

序号 容器和描述
1 Spring BeanFactory 容器

这是最简单的容器,提供对 DI 的基本支持,并由org.springframework.beans.factory.BeanFactory接口定义。BeanFactory 和相关的接口(如 BeanFactoryAware、InitializingBean、DisposableBean)仍然存在于 Spring 中,目的是为了与大量与 Spring 集成的第三方框架向后兼容。

2 Spring ApplicationContext 容器

此容器添加了更多企业特定功能,例如能够从属性文件解析文本消息以及能够将应用程序事件发布给感兴趣的事件侦听器。此容器由org.springframework.context.ApplicationContext接口定义。

ApplicationContext容器包含BeanFactory容器的所有功能,因此通常建议使用ApplicationContext而不是BeanFactory。对于轻量级应用程序(如移动设备或基于 applet 的应用程序),如果数据量和速度很重要,仍然可以使用 BeanFactory。

广告