spring的ioc和依赖注入是同一个概念么????????????????????????
spring的ioc:对象不需要由程序员手动调用new创建,而是由spring创建。
spring的依赖注入:通过接口、构造、设值注入方式,来传入创建的对象。
------解决方案--------------------同样都是不用自己管理!我认为基本一样!
------解决方案--------------------IOC :Inversion of Control,控制倒转就是由spring来管理控制对象的生命周期
------解决方案--------------------IOC的解释就是,控制反转,依赖注入。
------解决方案--------------------完全一样
------解决方案--------------------都一样吧!
------解决方案--------------------本质一样 就是名字不一样。控制反转不好理解,就有了依赖注入。
------解决方案--------------------差不多
------解决方案--------------------一样。。
------解决方案--------------------《Pro Spring2.5》解释了,不一样,DI是IoC的一种实现,IoC还有一种实现--Dependency lookup方式,Dependency lookup没有DI效果好。
------解决方案--------------------一样的 叫法不同
------解决方案--------------------书上写的是一样的,不过我听传智播客的视频的时候,里面讲解的貌似说有差别,
------解决方案--------------------有些又说不一样,有些又说一样。我觉得这个得根据情况来看了。
如果小明本身叫小明,但我习惯叫他冬瓜呢?此冬瓜又不是地上种的那种。
------解决方案--------------------IOC, 控制反转,就是依赖转移,对被调对象依赖转移到spring容器上。
依赖转移详解:当对象A调用对象B的属性或方法时,需要创建实例,然后调用,那么A依赖B。
如果spring来创建B实例,那么对象A是调用spring容器中的实例对象,那么A依赖spring容器。
依赖注入,楼主说的过程是OK的,也就是上文中spring来创建B实例的过程。
那么可以说,IOC是结果,依赖注入是过程或手段。
------解决方案--------------------一样~
控制反转 就是说把控制权交给程序,程序员只用配置文件描述下JAVA bean之间的依赖关系。
依赖注入 就是说bean之间的依赖关系是通过注入参数的方式~
这俩同一种设计思想的名字~ 后者是某个大师级人物提出来的~
------解决方案--------------------差不多,不钻牛角尖就一样
------解决方案--------------------《Pro Spring2.5》解释了,不一样,DI是IoC的一种实现,IoC还有一种实现--Dependency lookup方式
------解决方案--------------------是同一个概念 只是从不同的角度去看的。。
------解决方案--------------------如果深入了解其原理,你就知道了。(可能我说的是废话~~~)
------解决方案--------------------IOC :将调用底层逻辑的控制权由上层功能倒转给由spring容器来控制。
依赖注入:实现IOC的途径。
------解决方案--------------------可以说是吧,一个是概念,spring把它实现了,用依懒注入实现了控制反转,对吧、???
------解决方案--------------------应该是一样的!
------解决方案--------------------其实这个问题本身就是问的就有点矛盾:
ioc 就是控制反转意思,是一种概念,之中设计方式。
而实现种设计方式有:
通过接口、构造、设值注入方式,来传入创建的对象
------解决方案--------------------Ioc是一种思想,依赖注入是实现这种思想的一种方式 。
http://en.wikipedia.org/wiki/Inversion_of_control
------解决方案--------------------维基靠谱,看楼上!