天天看点

IOC容器底层原理一、原始与工厂模式二、IOC模式三、IOC容器在Spring中的实现

文章目录

  • 一、原始与工厂模式
  • 二、IOC模式
  • 三、IOC容器在Spring中的实现
    • ①BeanFactory
    • ②ApplicationContext
    • ③ApplicationContext的主要实现类

一、原始与工厂模式

IOC容器底层原理一、原始与工厂模式二、IOC模式三、IOC容器在Spring中的实现

二、IOC模式

IOC容器底层原理一、原始与工厂模式二、IOC模式三、IOC容器在Spring中的实现

三、IOC容器在Spring中的实现

IOC 思想基于 IOC 容器完成,IOC 容器底层就是对象工厂

①BeanFactory

  • 这是 IOC 容器的基本实现,是 Spring 内部使用的接口。面向 Spring 本身,不提供给开发人员使用。
  • 加载配置文件时候不会创建对象,在获取对象(使用)才去创建对象

②ApplicationContext

  • BeanFactory 的子接口,提供了更多高级特性。面向 Spring 的使用者,几乎所有场合都使用 ApplicationContext 而不是底层的 BeanFactory。
  • 以后在 Spring 环境下看到一个类或接口的名称中包含 ApplicationContext,那基本就可以断定,这个类或接口与 IOC 容器有关。
  • 加载配置文件时候就会把在配置文件对象进行创建

③ApplicationContext的主要实现类

IOC容器底层原理一、原始与工厂模式二、IOC模式三、IOC容器在Spring中的实现
类型名 简介
ClassPathXmlApplicationContext 通过读取类路径下的 XML 格式的配置文件创建 IOC 容器对象
FileSystemXmlApplicationContext 通过文件系统路径读取 XML 格式的配置文件创建 IOC 容器对象
ConfigurableApplicationContext ApplicationContext 的子接口,包含一些扩展方法 refresh() 和 close() ,让 ApplicationContext 具有启动、关闭和刷新上下文的能力。
WebApplicationContext 专门为 Web 应用准备,基于 Web 环境创建 IOC 容器对象,并将对象引入存入 ServletContext 域中。