合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
`org.springframework.context.ApplicationContext`表示 IOC 容器,它的职责是实例化、配置以及装配Bean(容器通过配置元数据去完成这些操作)。XML、Java 注解以及Java 代码都可以用来编写配置元数据,它表达了构成应用的对象及对象间丰富的依赖关系。   Spring提供了几种`ApplicationContext`的实现类,在独立的应用中通常会创建 [`ClassPathXmlApplicationContext`](https://docs.spring.io/spring-framework/docs/5.0.6.RELEASE/javadoc-api/org/springframework/context/support/ClassPathXmlApplicationContext.html)和[`FileSystemXmlApplicationContext`](https://docs.spring.io/spring-framework/docs/5.0.6.RELEASE/javadoc-api/org/springframework/context/support/FileSystemXmlApplicationContext.html)实例(这两个实现类都是通过 XML 配置文件来实例化)。尽管XML作为配置元数据的传统定义方式,但你还是可以使用少量的 XML 配置来使得以Java注解或者Java代码的方式定义的配置元数据生效。   在大多数应用场景中,你都不需要直接编写代码来实例化一个或多个容器实例。举个例子,在Web 应用中,通常只需要在`web.xml`中编写几行样板式代码就可以配置容器了(详情参见:[1.15.4.Web 应用中便捷的 ApplicationContext 实例](1.15.4.Web应用中便捷的ApplicationContext实例.md))。如果你使用的是基于 Eclipse 的 [STS ](https://spring.io/tools/sts)开发环境,那只需要鼠标点几下,键盘按几次就可以完成容器的配置。   下面是展示 Spring如何工作的顶层图示。首先,你应用的中的类将会和定义的配置元数据结合,然后容器完成创建、初始化等工作。此时,你将得到一个高度配置的,可运行的系统或应用。 :-: ![图1.2-1 Spring IOC容器](https://box.kancloud.cn/5ab6e3c3c7c024947945a20841bd20ea_498x296.png) :-: 图1.2-1 Spring IOC容器