首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

spring 的统制反转与依赖注入

2013-02-19 
spring 的控制反转与依赖注入详细参考:http://jinnianshilongnian.iteye.com/blog/1413846http://www.cnbl

spring 的控制反转与依赖注入

详细参考:http://jinnianshilongnian.iteye.com/blog/1413846

http://www.cnblogs.com/xingyukun/archive/2007/10/20/931331.html

?

IoC就是IoC,不是什么技术,与GoF一样,是一种设计模式。Interface Driven Design接口驱动,接口驱动有很多好处,可以提供不同灵活的子类实现,增加代码稳定和健壮性等等,但是接口一定是需要实现的,也就是如下语句迟早要执行:AInterface a = new AInterfaceImp(); 这样一来,耦合关系就产生了,如:Class A{AInterface a;A(){}aMethod(){a = new AInterfaceImp();}}ClassA与AInterfaceImp就是依赖关系,如果想使用AInterface的另外一个实现就需要更改代码了。当然我们可以建立一个Factory来根据条件生成想要的AInterface的具体实现,即:InterfaceImplFactory{AInterface create(Object condition){if(condition = condA){return new AInterfaceImpA();}elseif(condition = condB){return new AInterfaceImpB();}else{return new AInterfaceImp();}}}表面上是在一定程度上缓解了以上问题,但实质上这种代码耦合并没有改变。通过IoC模式可以彻底解决这种耦合,它把耦合从代码中移出去,放到统一的XML 文件中,通过一个容器在需要的时候把这个依赖关系形成,即把需要的接口实现注入到需要它的类中,这可能就是“依赖注入”说法的来源了。

热点排行