Spring IoC容器和核心概念

3.1 组件和组件管理概念

  • 3.1.1 什么是组件?
    回顾常规的三层架构处理请求流程:

Spring IoC容器和核心概念_赋值

整个项目就是由各种组件搭建而成的:

Spring IoC容器和核心概念_依赖关系_02

  • 3.1.2 我们的期待
  • 有人替我们创建组件的对象
  • 有人帮我们保存组件的对象
  • 有人帮助我们自动组装
  • 有人替我们管理事务
  • 有人协助我们整合其他框架
  • ......
  • 3.1.3 Spring充当组件管理角色(IoC)
    那么谁帮我们完成我们的期待,帮我们管理组件呢?
    当然是Spring 框架了!
    组件可以完全交给Spring 框架进行管理,Spring框架替代了程序员原有的new对象和对象属性赋值动作等!
    Spring具体的组件管理动作包含:
  • 组件对象实例化
  • 组件属性属性赋值
  • 组件对象之间引用
  • 组件对象存活周期管理
  • ...... 我们只需要编写元数据(配置文件)告知Spring 管理哪些类组件和他们的关系即可! 注意:组件是映射到应用程序中所有可重用组件的Java对象,应该是可复用的功能对象!
  • 组件一定是对象
  • 对象不一定是组件 综上所述,Spring 充当一个组件容器,创建、管理、存储组件,减少了我们的编码压力,让我们更加专注进行业务编写!
  • 3.1.4 组件交给Spring管理优势!
  1. 降低了组件之间的耦合性:Spring IoC容器通过依赖注入机制,将组件之间的依赖关系削弱,减少了程序组件之间的耦合性,使得组件更加松散地耦合。
  2. 提高了代码的可重用性和可维护性:将组件的实例化过程、依赖关系的管理等功能交给Spring IoC容器处理,使得组件代码更加模块化、可重用、更易于维护。
  3. 方便了配置和管理:Spring IoC容器通过XML文件或者注解,轻松的对组件进行配置和管理,使得组件的切换、替换等操作更加的方便和快捷。
  4. 交给Spring管理的对象(组件),方可享受Spring框架的其他功能(AOP,声明事务管理)等