IBatisNet教程.pdf

  1. 1、本文档共57页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
IBatisNet教程

iBATIS iiBBAATTIISS教程 一.iBATIS 官方网站: 一一..iiBBAATTIISS 官官方方网网站站:: 目前官方发布的.net部分组件: DataMapper1.6.1[MD5][PGP](ApacheGeneralAvailability) DataAccess1.9.1[MD5][PGP](ApacheGeneralAvailability) SourceRevision513437[MD5][PGP] 二. 前言: 二二.. 前前言言:: iBATIS 框架有助于帮助开发人员在利用Java或.NET进行应用程序开发时更好的使用数据库。iBATIS DataMapper(数据映 射)使用XML文件来存储数据库中的存储过程或者SQL语句,因此,可以说iBATIS DataMapper就是依赖于对象、XML、SQL。 在iBATIS DataMapper框架下,既可以使用SQL基本语句,也可以使用存储过程。iBATIS框架的目标就是用20%的编码达到80%的 数据访问功能。 三. iBATIS DataMapper Version 1.6.0 的改进 三三.. iiBBAATTIISS DDaattaaMMaappppeerr VVeerrssiioonn 11..66..00 的的改改进进 (1)解决了带有groupby 的Select 语句中N+1问题; (2)通过<include/>节点标识,增加了对SQL片段的支持 (3)增加了对字典查询IDictionary<K,V>QueryForDictionary<K,V>(...) 的支持 (4)允许存储过程无参数映射; (5)删除了几个不再使用的方法: Configure(XmlDocumentdocument),Configure(), Configure(stringresource), ConfigureAndWatch(ConfigureHandlerconfigureDelegate), ConfigureAndWatch(stringresource,ConfigureHandlerconfigureDelegate) (6)允许通过扩展ISqlMapper+ ,允许使用自定义ISqlMapper; (7)允许用户自定义缓存; (8)原版本中的QueryForPaginatedList 方法不再使用; 四、iBATIS DataMapper 工作流程 四四、、iiBBAATTIISS DDaattaaMMaappppeerr 工工作作流流程程 说明: (1)参数提供——把一个对象或者一个基本类型作为参数,这些参数用于运行SQL语句或存储过程运行时的参数。如果不需要参数,则可以省 略。 (2)通过参数名称和在XML文档中定义的SQL语句或存储过程的名字执行数据映射,这个地方就是iBATIS的奥妙所在。iBATIS框架负责产生 SQL语句或存储过程,用我们提供的参数设置这些语句的变量值,然后执行语句并返回结果。 (3)在update操作语句中,返回受影响的行数。在查询语句中,返回一个对象或者一个对象集。 举例: 下面给出一个执行“insert”lineItem对象命令代码的基本过程: (1) C# Mapper.Instance().Insert("InsertLineItem",lineItem); 如果数据库中这个对象的表含有主键,则可以获取插入数据的主键值: C# intmyKey =Mapper.Instance().Insert("InsertLineItem",lineItem); (2)与"InsertLineItem"相关的XML描述文档: <insertid="InsertLineItem" parameterClass="LineItem"> INSERTINTO[LinesItem] (Order_Id,LineItem_LineNum, Item_Id,LineItem_Quantity,LineItem_UnitPrice) VALUES (#Order.Id#,#LineN

文档评论(0)

gaimy + 关注
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档