Spring——核心概念

代码书写现状:

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

我们追求低耦合

解决方案:

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

IoC控制反转

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

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

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

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

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

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

目标:充分解耦

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

最终效果:

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

相关推荐
文丑颜不良啊5 小时前
LeetCode876~900题目解析
java·leetcode
aloha_7895 小时前
Java 基础、集合、异常与 JUnit 5 速查
java·junit·sqlserver
CarIise5 小时前
SpringMVC 异常处理与拦截器
大数据·spring
知守观6 小时前
设计模式实战:从真实老项目中看标准模板方法与工厂的落地
java·spring·设计模式
独隅6 小时前
Claude API 实战教程:从入门到完整项目
android·java·数据库·claude·claude code
_孤傲_6 小时前
快速掌握 MySQL 语法
数据库·后端·mysql
Wang's Blog6 小时前
Java 项目实战: 交友项目 - 圈子功能实现:总结
java·开发语言·交友
SL_staff7 小时前
JVS私有化文档系统上线避坑指南:5大运维与业务协同断点及检测加固实践
java·开源·全栈
IT_陈寒8 小时前
Java静态变量初始化坑得我头皮发麻
前端·人工智能·后端
FinelyYang8 小时前
考试系统简答题 AI 阅卷:覆盖度驱动、异步评分与人机协同落地实践
java·大数据·人工智能