1.ApplicationContext简述

ApplicationContext代表IOC容器,在SpringIOC容器中读取Bean配置创建Bean实例之前,必须对它进行实例化,只有在容器实例化后才可以从IOC容器里获取Bean实例并使用。

 

2.Spring IOC容器实现方式

 

Spring 提供了两种类型的IOC容器实现:

  • BeanFactory:IOC容器的基本实现。

 

  • ApplicationContext:提供了更多的高级特性,是BeanFactory的子接口。

 

两种方式比较:

  • BeanFactory:BeanFactory是Spring框架的基础设施,面向Spring本身:

 

  • ApplicationContext : 面向使用Spring框架的开发者,几乎所有的应用场合都直接使用ApplicationContext而非底层的BeanFactory。无论使用何种方式,配置文件是相同的。

ApplicationContext主要实现类

  • ClassPathXmlApplicationContext : 从类路径下加载配置文件。

 

  • FileSystemXmlApplicationContext : 从文件系统中加载配置文件。

 

 ApplicationContext其他实现类:

  • ConfigurableApplicationContext:Spring当中还有一个ConfigurableApplicationContext类,扩展于ApplicationContext, 新增加两个主要方法。refresh()和close(),让ApplicationContext具有启动、刷新和关闭上下文的能力。ApplicationContext在初始化上下文时就实例化所有的单例Bean.

 

  • WebApplicationContext:WebApplicationContext是专门为WEB应用而准备的,它允许从相对于WEB根目录的路径中完成初始化工作。

3.ApplicationContext实现类之间的关系

下面是它们的UML类图

Spring基础04——ApplicationContext

 

 

ClassPathXmlApplicationContext和FileSystemXmlApplicationContext类都是继承自ConfigurableApplicationContext,而ApplicationContext中的getBean方法则是BeanFactory中的方法,因为BeanFactory接口是ApplicationContext的父接口。

 

相关文章:

  • 2022-02-03
  • 2021-06-27
  • 2022-02-23
  • 2022-12-23
  • 2022-01-15
  • 2022-01-05
  • 2021-06-27
猜你喜欢
  • 2021-07-01
  • 2021-04-16
  • 2022-12-23
  • 2021-06-10
  • 2021-10-26
  • 2021-07-26
  • 2021-09-05
相关资源
相似解决方案