Spring——核心概念

代码书写现状:

假如数据层实现,来了一个全新的实现,此时业务层需要修改,代码耦合度偏高

我们追求低耦合

解决方案:

使用对象时,在程序中不要主动使用new产生对象,转换为由外部提供对象

IoC控制反转

对象的创建控制权由程序转移到外部,这种思想称为控制反转

即使用对象时,由主动new产生对象转换为由外部提供对象,此过程中对象创建控制权由程序转移到外部

Spring技术对IoC思想进行了实现

Spring提供了一个容器,称为IoC容器,用来充当IoC思想中的"外部"

IoC容器负责对象的创建,初始化等一系列工作,被创建或被管理的对象在IoC容器中统称为Bean

在容器中建立bean与bean之间的依赖关系的整个过程,称为依赖注入

目标:充分解耦

  1. 使用IoC容器管理bean
  2. 在IoC容器内将有依赖关系的bean进行关系绑定(DI)

最终效果:

使用对象时不仅可以直接从IoC容器中获取,并且获取到的bean已经绑定了所有的依赖关系

相关推荐
2501_9378609422 分钟前
Java 集合底层深度剖析:Map 与 Set、二叉搜索树、哈希表全解
java·数据结构·散列表
cyforkk37 分钟前
并发控制与状态安全:Single-Flight 与幂等性的本质区别
java·安全·spring
Codelinghu38 分钟前
LangSmith Evaluate实战评估Agent,不要在玩Demo了
后端
xingren41 分钟前
人体模型部位分割:从 SCHP平面解析 映射到 3D 模型
后端
董员外43 分钟前
RAG 系统进化论(五):Corrective RAG 与 Self-RAG,让系统发现并纠正错误
人工智能·后端·设计模式
暗黑小白44 分钟前
路由策略与引擎可替换性
后端·python·ai agent
豆角焖肉1 小时前
MyBatis延迟加载、缓存机制与注解开发
java·spring·mybatis
所愿ღ1 小时前
SSM框架-Spring3
java·开发语言·笔记·spring
java1234_小锋1 小时前
【免费】基于Spark实时交通流量分析与拥堵预测系统(Java版本+可视化大屏+Kafka+SpringBoot+Vue3) 锋哥原创出品,必属精品
java·大数据·spark·kafka·实时交通流量分析与拥堵预测
组合缺一1 小时前
Solon 的 10 种 HTTP 服务器:改一行依赖,换一个引擎
java·服务器·网络协议·http·solon