1、Spring的核心容器
Spring框架的主要功能是通过其核心容器来实现的。
Spring框架提供了2种核心容器,分别是 BeanFactory 和 ApplicationContext。
BeanFactory
org.springframework.beans.factory.BeanFactory接口定义,是基础类型的IOC容器。
一个管理Bean的工厂,主要负责初始化各种Bean,并调用她们的生命周期方法。
ApplicationContext
是BeanFactory的子接口,也被称为应用上下文,是另一种常用的Spring核心容器。
由 org.springframework.context.ApplicationContext 接口定义,不仅包含了 BeanFactory的所有功能,还添加了对国际化、资源访问、事件传播等方面的支持。
在使用Spring框架时,可以通过实例化其中任何一个类来创建ApplicationContext容器。
通常在Java项目中,会采用通过ClassPathXmlApplicationContext类来实例化ApplicationContext容器的方式,而在Web项目中,ApplicationContext容器的实例化工作会交由Web服务器来完成。Web服务器实例化ApplicationContext容器时,通常会使用基于ContextLoaderListener实现的方式,次荣方式只需要在web.xml中添加如下代码:
contextConfigLocation classpath:spring/applicationContext.xml org.springframework.web.context.ContextLoaderListener