首页 > 其他 > 详细

IOC容器

时间:2015-08-07 00:04:17      阅读:319      评论:0      收藏:0      [点我收藏+]

IOC概念

控制反转(Inversion of Control ),是一个重要的面向对象编程法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心。

 

 

 

反射:

 技术分享

 

 

依赖注入(Dependency Injection):

 

ICoreDbSession dbSession=CallContext.GetData("Dbsession") as ICoreDbsession;

if (dbSession==null){

dbSession=SpringHelper.GetObject<ICoreDbSession>("DBSession");//拿到了容器封装的上下文ContextRegistry.GetContext()

 

CallContext.SetData("DbSession",dbSession);

}

 

 

 技术分享

 

 

配置文件:

<object id="DBSession" type="ITOO.FreshNewReport.DAL.DBSession,ITOO.FreshNewReport.DAL" singleton="false">

<property name="StudentManageDals" ref="StudentManageDals">

</object>

 

 

<object  id="StudentManageDals" type="ITOO.FreshNewReport.DAL.StudentManageDals,ITOO.FreshNewReport.DAL" singleton="false">

 

 

依赖查找(Dependency Lookup):

IFamilyInfoBll  FamilyInfoBll=SpringHelper.GetObject<IFamilyInfoBll  >("FamilyInfoBll")

 

IOC优缺点:

好处:

把对象生成放在了xml里面定义,更换子类很方便,实现热插拔。

缺点:

1.生成类的步骤变多了

2.生成对象在效率上有损耗

3.缺少IDE重构的操作支持,要手动修改类

 

 

我的个人理解:

IOC容器,就是在程序运行的时候,首先读取配置文件中的<object>中的关于IOC的代码,实例化出IOC中给出的类型、具体的类;然后在B层,或者WCF层,都可以将具体的类强转成接口,来完成类的实例化。

 

依赖注入:

可以注入自己想要的属性,容器提供回调接口和上下文条件给组件。把符合依赖关系的对象通过JavaBean属性或者构造函数传递给对象。

依赖查找:

可以通过查找的方法查找自己实例化的类。通过容器提供的API来查找资源与协作对象。

IOC容器

原文:http://www.cnblogs.com/wangmei/p/4709354.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!