两种容器

什么是容器?

简单来说,容器(Container)就是一个环境。这个环境提供了一些功能,用来服务跑在这个环境里的应用。就Spring而言,她提供了两种容器,一种是Spring应用上下文,一种是Bean工厂。

Bean工厂比较简单,主要提供了创建和装配Bean的功能。Spring应用上下文加载配置文件之后生成Bean定义,再把Bean定义交给Bean工厂,Bean工厂就能根据Bean定义创建和装配Bean。由此可见,Spring应用上下文包含了整个Bean工厂。Bean工厂能够提供的功能,Spring应用上下文照样也能。除此之外,Spring应用上下文还提供了一些其她功能,比如管理Bean的生命周期,解读属性文件,内建事件发布机制,等等。也就是说,相较于Bean工厂,Spring应用上下文提供的功能更加丰富,更加周全,使用起来也更加简单,更加方便。正因如此,我们通常不会直接使用Bean工厂,而是使用Spring应用上下文进行开发。

Spring应用上下文有多种实现,不同实现的Spring应用上下文加载配置文件的方式是不同的。以下是常用的Spring应用上下文实现:

1. ClassPathXmlApplicationContext:基于类路径查找一个或多个指定的XML配置文件,再从找到的文件里加载Spring应用上下文。

2. FileSystemXmlApplicationContext:基于文件系统查找一个或多个指定的XML配置文件,再从找到的文件里加载Spring应用上下文。

3. AnnotationConfigApplicationContext:从一个或多个指定的Java配置类里加载Spring应用上下文。

4. AnnotationConfigWebApplicationContext:从一个或多个指定的Java配置类里加载Spring Web应用上下文。

5. XmlWebApplicationContext:基于Web根目录查找一个或多个指定的XML配置文件,再从找到的文件里加载Spring Web应用上下文。

这里只是简单介绍一下各种Spring应用上下文实现。至于详细内容,我们会在相关章节进行介绍。

返回目录

猜你喜欢

转载自www.cnblogs.com/evanlin/p/12651893.html