栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Spring(IOC控制反转)理论推导

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring(IOC控制反转)理论推导

这个思想,我听一遍就懂了。思想的事情,需要每一句话不断琢磨,IOC就是一个根本性的变化,理解后就会有一种大彻大悟的感觉,呼吸都会顺畅很多。学习之前,要多感受传统开发下,在业务层实现类(ServiceImpl)下调用接口实现类(DaoImpl)的瓶颈。

问题

在我们之前的业务中,用户的需求可能会影响我们原来的代码, 我们需要根据用户的需求去修改原代码,如果程序代码量十分大,修改一次的成本代价身份昂贵。

开发顺序

1.Dao接口
2.DaoImpl实现类
3.Service接口
4.ServiceImpl业务实现类

用户是从业务层(只有逻辑代码)进入

IOC

在传统ServiceImpl中直接new一个Dao层实现类,一个业务一个实现类,导致每增加一个用户功能都会导致new的实现类发生改变。导致,代码波动很大,所以,在ServiceImpl中,直接添加DaoImpl的set方法,形成接口,这样就可以在用户层面统一调用set方法进行更新功能。

ServiceImpl

总之一句话,就是使系统的耦合性降低了。更加灵活了。可以专心的在功能上进行开发,省去在植入功能上的烦恼。
这是IOC的原型,Spring就是基于这个原型,进行开发。

深入理解

传统开发就是在业务层实现接口类(ServiceImpl)下写死
(UserDao dao=new UserDaoImpl)
每次进行功能更新,都需要程序员进行不断地在ServiceImpl下更改实现类接口下的接口实现类(DaoImpl)。所以控制权在程序员手里。
所以,经过IOC思想的反转,发生了根本性的变化,通过在业务层实现接口类(ServiceImpl)下声明实现类接口(Dao),添加set接口,灵活更改实现类接口中的接口实现类(DaoImpl),使关注点就全部转移到了用户层的实现功能上,所以控制权转移到了用户。

IOC本质

控制反转是一种设计思想,DI(依赖注入)是实现LOC的一种方式。
控制反转是一种通过描述(XML或注解)并通过第三方生产或获取特定对象的方式。在Spring中实现控制反转的是LoC容器,其实现方法是依赖注入(Dependecy Injection,DI)。

总结:传统的开发在业务层进行更新业务,更新业务是由程序员完成,看程序员选择和调用什么业务。spring就开始,在用户层,看用户选择和调用什么业务。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/462761.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号