永发信息网

spring ioc和di的区别

答案:2  悬赏:80  手机版
解决时间 2021-02-28 22:46
spring ioc和di的区别
最佳答案
IOC是个更宽泛的概念,DI是更具体的。引用郑烨的一篇博客,我眼中的Spring
Dependency Injection
原来,它叫IoC。
Martin Flower发话了,是个框架都有IoC,这不足以新生容器反转的“如何定位插件的具体实现”,于是,它有了个新名字,Dependency Injection。
其实,它就是一种将调用者与被调用者分离的思想,Uncle Bob管它叫DIP(Dependency Inversion Principle),并把它归入OO设计原则。
同Spring相比,它更早进入我的大脑。一切都是那么朦胧,直至Spring出现。

慢的,我知道了它还分为Interface Injection(type 1),Setter Injection(type
2),Constructor Injection(type 3)。Martin Flower那篇为它更名的大作让我心目关于它的一切趋于完整。
在Spring中,它是一切的基础。Spring的种种优势随之而来。
于我而言,它为我带来更多的是思维方式的转变,恐怕以后我再也无法写出那种一大块的全功能程序了。
全部回答
ioc就是控制翻转或是依赖注入。通俗的讲就是如果在什么地方需要一个对象,你自己不用去通过new 生成你需要的对象,而是通过spring的bean工厂为你长生这样一个对象。 aop就是面向切面的编程。比如说你每做一次对数据库操作,都要生成一句日志。如果,你对数据库的操作有很多类,那你每一类中都要写关于日志的方法。但是如果你用aop,那么你可以写一个方法,在这个方法中有关于数据库操作的方法,每一次调用这个方法的时候,就加上生成日志的操作。 说的不是很清晰,多写多看就能明白了。 通过di(dependency injection,依赖注入)来实现的。比如对象a需要操作数据库,以前我们总是要在a中自己编写代码来获得一个connection对象,有了 spring我们就只需要告诉spring,a中需要一个connection,至于这个connection怎么构造,何时构造,a不需要知道。在系统运行时,spring会在适当的时候制造一个connection,然后像打针一样,注射到a当中,这样就完成了对各个对象之间关系的控制。a需要依赖 connection才能正常运行,而这个connection是由spring注入到a中的,依赖注入的名字就这么来的。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
草字头一个九读什么
二次根式难题解答已知 根号X加根号X分之一等
旅游百事通湖口凤鸣园广场营业部这个地址在什
联通IPTV怎么接多台电视
高三的课程表?上下课的时间?
江苏省常熟市肉联厂地址在哪,我要去那里办事
一米是多少啊拿个东西比喻一下是一大步还是一
在“绿叶在光下制造有机物”的实验中,将一盆
米兰高贵模特的潜规则主角!
天天爱消除冒险模式292关过关攻略
为什么5╱12兀×2+∮会等于2╱兀
求助,徕卡的50缩头该如何选择
跪求《mark me》复仇者联盟同人文,ABO设定
自己发现深山里面有古墓怎么办?
晓婷是什么意思
推荐资讯
白金万宝路,骆驼香烟价格
酿白酒用什么曲最好?
推荐一款电视机玩x360
国内相对比较知名的建筑设计院有哪些?
混凝土斜坡房顶搭建
微信上的人联系着联系着就慢慢不在联系了,感
将10g药粉溶解在100g药是水重量的多少
成语五穷六绝啥意思
好运鞋业地址在什么地方,想过去办事
民用设计院还是工业设计院好?
准备搬家的话都需要做哪些准备工作
Mr·北coffee·西餐怎么去啊,有知道地址的么
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?