Spring——IOC/DI思想

1、IOC(Inversion of Control)控制反转

何为控制反转?

在业务层中我们如果要调用数据层的方法那么必然牵扯到对象的创建 ,如果我想要改变 上述数据层 的方法中的内容 ,那么我就要改变业务层 的代码,重新创建对象程序重新编译 运行,这样就会存在一个资源消耗 的问题,所以提出来IOC的思想,也就是将对象的控制权交给IOC容器来处理 而不必人为去创建对象。当业务层需要数据层的对象时,IOC容器会帮我们对对象进行创建和初始化等一系列操作。IOC容器被创建被管理的对象通一称为Bean。

2、DI(Dependency Injection)依赖传递

何为依赖传递?

既然在上面的IOC思想中我们已经把Bean交给容器去管理,++假设容器只起到管理Bean的作用++ 那么如果我调用业务层 对象由于业务层的运行 需要创建数据层对象 但业务层还没运行肯定没有数据层对象 ,这时程序就会报错 ,此时IOC容器的另一个作用就体现出来了,它会对有关系的对象进行依赖传递,将两个Bean绑定起来,此时调用业务层对象的同时 数据层对象就会在IOC中创建出来并初始化给到业务层从而使业务层实现。这就叫做依赖传递。

相关推荐
华仔啊1 小时前
SpringBoot 中 6 种数据脱敏方案,第 5 种太强了,支持深度递归!
java·后端
异常驯兽师2 小时前
Spring 中处理 HTTP 请求参数注解全解析
java·spring·http
连合机器人2 小时前
晨曦中的守望者:当科技为景区赋予温度
java·前端·科技
AD钙奶-lalala2 小时前
idea新建的项目new 没有java class选项
java·ide·intellij-idea
sheji34163 小时前
【开题答辩全过程】以 12306候补购票服务系统为例,包含答辩的问题和答案
java·eclipse
hzzzzzo03 小时前
微服务网关全解析:从入门到实践
java·开发语言·微服务
纪莫3 小时前
技术面:Spring (bean的生命周期、创建方式、注入方式、作用域)
java·spring·java面试⑧股
We....4 小时前
Java多线程分块下载文件
java·开发语言
不秃的开发媛4 小时前
Java连接池详解:从Oracle到TiDB的随缘之旅
java·oracle·tidb
Pluchon4 小时前
硅基计划3.0 Map类&Set类
java·开发语言·数据结构·算法·哈希算法·散列表