java 简单了解spring之(IOC容器)

IOC,即控制反转,是Spring框架的核心特性,旨在降低代码耦合度。通过IOC,对象的创建和依赖关系的管理由容器负责,而不是代码直接new。文章提到了三种主要技术:XML解析、工厂模式和反射。工厂模式虽能部分解耦,但仍存在耦合问题。XML解析和反射进一步实现了对象实例化和配置的灵活性,降低了模块间的关联性风险。
摘要由CSDN通过智能技术生成

IOC 容器 是spring的一个重要组成部分
IOC 翻译过来叫控制反转
他在做的事是 降低计算机代码的耦合度 这个过程叫IOC
通过控制反转 对象在被创建时 由一个调控系统内所有对象的外界实体将将其所依赖的对象引用传递给他,也可以说,依赖被注入到对象中

说简单一点 首先 IOC 控制反转 可以举例说 比如 我们之前创建一个对象 是先new这个对象 然后才能通过new出的对象调用对象中的方法 而IOC就可以做到这个过程 还可以实现解耦
至于目的 通过帮助你管理 对象和对象之前的调用过程 降低代码的耦合度

其实我的文章
java 手把手带你创建一个spring入门案例
也是IOC的实现

IOC中主要有三个技术
1 xml 解析
2 工厂模式(一种设计模式)
3 反射

然后 我们用一组图片过一下整体流程

例如 我们有两个类 UserService 其中有一个execute方法
UserDao里面有一个add add中有自己的方法体
在这里插入图片描述
然后 如果我们想在UserService中的execute中调用UserDao的add方法

按照最原始的方法就是在这里插入图片描述
但这样写 说官方一点 就是 耦合度太高了
如果UserDao的路径 或者 方法变量 另一个类也得跟着改

而在工厂模式中 我们可以创建一个工厂类 写一个返回对象实例的方法
在这里插入图片描述
但是这里又出现了新的问题

虽然UserService 和 UserDao 做了解耦 但工厂和类又出现了耦合度

这是要特此声明的 真正在开发上 是不可能实现完全没有耦合度的 只能说 将耦合度降低最低
尽可能减少模块之前的关联性风险

但我们当前这个 还能进一步解耦 还没有到所谓的最低限度

当然 也不止靠 工厂模式 还有 xml的解析 读取xml内容和属性 以及反射 所谓反射 就是通过获取类中字节码文件 操作类中的所有内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值