①【Spring】一文了解IOC容器

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

在这里插入图片描述

个人简介Java领域新星创作者阿里云技术博主、星级博主、专家博主正在Java学习的路上摸爬滚打记录学习的过程~
个人主页.29.的博客
学习社区进去逛一逛~

在这里插入图片描述

一文掌握IOC



一、IOC

  • IOCInversion of Control翻译过来是反转控制

  • DIDependency Injection翻译过来是依赖注入

  • IOC 就是一种反转控制的思想 而 DI 是对 IOC 的一种具体实现。

反转控制的思想完全颠覆了应用程序组件获取资源的传统方式反转了资源的获取方向——改由容器主动的将资源推送给需要的组件开发人员不需要知道容器是如何创建资源对象的只需要提供接收资源的方式即可极大的降低了学习成本提高了开发的效率。这种行为也称为查找的被动形式。




二、IOC容器的实现

Spring提供了实现IOC容器的两种方式两个接口

  • BeanFactory
  • ApplicationContext

BeanFactory 接口 :

BeanFactory 是 IOC 容器的基本实现是 Spring 内部使用的接口。面向 Spring 本身不提供给开发人员使用。


ApplicationContext 接口 :

BeanFactory 的子接口提供了更多高级特性。面向 Spring 的使用者几乎所有场合都使用 ApplicationContext 而不是底层的 BeanFactory。


ApplicationContext接口中有两个主要的实现类

  • ClassPathXmlApplicationContext
  • FileSystemXmlApplicationContext
类型名功能
ClassPathXmlApplicationContext通过读取类路径下的 XML 格式的配置文件创建 IOC 容器对象
FileSystemXmlApplicationContext通过文件系统路径读取 XML 格式的配置文件创建 IOC 容器对象


在这里插入图片描述

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Spring