首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

一个关于Spring,依赖注入,控制反转有什么用的有关问题

2012-08-09 
一个关于Spring,依赖注入,控制反转有什么用的问题?Java codeInterface Anew ClassA();a.hello()ClassA,C

一个关于Spring,依赖注入,控制反转有什么用的问题?

Java code
Interface A=new ClassA();a.hello();

ClassA,ClassA都实现了接口Interface
如果我不用ClassA了,用ClassB,这样我要改一句,
如果用SPRING来实现,也是改一句配置

那我想问SPRING的依赖注入有什么用?
如何体现出spring,依赖注入的优点
能不能举些例子

[解决办法]
如果是依赖注入。
这里就不用new 这个ClassA对象。而由spring动态注入进去。

Interface A=new ClassA();
a.hello();
改成
Interface A;
a.hello();

当需要ClassA对象时就注入ClassA对象,需要ClassB对象时就注入ClassB(当然ClassB也要实现相同的接口)。
所以这个类就不用反复的修改。这里spring体现的是解耦。
[解决办法]
探讨
Java code


Interface A=new ClassA();
a.hello();


ClassA,ClassA都实现了接口Interface
如果我不用ClassA了,用ClassB,这样我要改一句,
如果用SPRING来实现,也是改一句配置

那我想问SPRING的依赖注入有什么用?
如何体现出spring,依赖注入的优点
能不能举些例子

[解决办法]
探讨
这种情况只有在你不用改动classA,classB,
而且不断在两者之间轮着交换使用时才有优势,
如果要修改classB,还是要编译的,

不用写new ,但还是要在框架里面配置,还是没有优势

[解决办法]
用spring,我的理解,最大的好处就是减少了耦合,不光是修改文件需不需要编译的问题。
关于楼主说的spring终究要去创建对象。但这部分正好交由spring去管理,从而我们解脱了出来,我们写代码不用考虑这种对象的创建与管理,这部分的复杂度交给了spring。这自然就是spring带给我们的好处。
当然什么都有其优点与不足,如果实际项目中用spring没带给多少方便,自然可以不使用。
[解决办法]
建议看下设计模式:面向接口编程。
[解决办法]
探讨
引用:
我知道spring优点是减少耦合,但我不清楚他如何减少了耦合

[解决办法]
探讨
引用:
也就是创建这个ClassA对象由业务类主动的去创建改为了被动的接受spring IOC容器的注入。这就是解耦了
但A类还是需要B类,还是有耦合的,我觉得注入只是改变了耦合方式,

热点排行