EF,NH,IN 数据层访问框架比较.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
EF,NH,IN 数据层访问框架的比较 1.框架选型背景 针对四川日报招标比选网比选系统的全程电子化的实现目标,要求设计出一套高效、稳 定的比选系统,这就对数据库访问提升了更高的要求。原系统采用sqlserver 数据库,以及 的传统数据访问方式。这样在开发效率比较低下,代码健壮性得不到很好的保证。 介于此,经开发团队讨论,我们在数据访问层需要采用一个开源的、健壮的、有团队维 护的数据层访问框架。 在数据访问框架选型时,我们必须包括以下一些标准: 1. 框架稳定性 2. 框架的运行性能 3. 框架维护性 4. 框架的开发效率 5. 满足系统的多数据库访问要求 6. 框架流行度 2.持久化和对象关系映射技术简介 2.1 什么是 “持久化”和 “持久层” 持久 ( ),即把数据 (如内存中的对象)保存到可永久保存的存储设备中(如 Persistence 磁盘)。持久化的主要应用是将内存中的数据存储在关系型的数据库中,当然也可以存储在 磁盘文件中、XML 数据文件中等等。 持久层 ( ),即专注于实现数据持久化应用领域的某个特定系统的一个 Persistence Layer 逻辑层面,将数据使用者和数据实体相关联。 持久层是负责向(或者从)一个或者多个数据存储器中存储 (或者获取)数据的一组类 和组件。这个层必须包括一个业务领域实体的模型 (即使只是一个元数据模型)。 不过这里有一个字需要特别强调,也就是所谓的“层”。 对于应用系统而言,数据持久功能大多是必不可少的组成部分。那不就是说,我们的系 统中,已经天然的具备了“持久层”概念? 也许是,但也许实际情况并非如此。 之所以要独立出一个“持久层”的概念,而不是“持久模块”,“持久单元”,也就意味着,我 们的系统架构中,应该有一个相对独立的逻辑层面,专著于数据持久化逻辑的实现.与系统 其他部分相对而言,这个层面应该具有一个较为清晰和严格的逻辑边界。 2.2 什么是 “对象关系映射” ,即 “对象 关系映射 。对于 ,即 (对象) ORM-Object/Relational Mapping - ” O/R Object 和 Relational (关系型数据),表示必须同时使用面向对象和关系型数据进行开发。 对象关系映射 ( ,简称 )是一种为了解决面向对象与关 Object Relational Mapping ORM 系数据库存在的互不匹配的现象的技术。简单的说,ORM 是通过使用描述对象和数据库之 间映射的元数据,将程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形 式转换到另外一种形式。这也同时暗示者额外的执行开销;然而,如果ORM 作为一种中间 件实现,则会有很多机会做优化,而这些在手写的持久层并不存在。更重要的是用于控制转 换的元数据需要提供和管理;但是同样,这些花费要比维护手写的方案要少. 对象关系映射 ( ,简称 ),是随着面向对象的软件开发方 - Object/Relation Mapping ORM 法发展而产生的面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系, 数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体 的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中的对 象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承关系。 因此,对象关系映射 系统一般以中间件的形式存在,主要实现程序对象到关系数据库 - (ORM) 数据的映射。 面向对象是从软件工程基本原则如耦合、聚合、封装 的基础上发展起来的,而关系数 ( ) 据库则是从数学理论发展而来的,两套理论存在显著的区别。为了解决这个不匹配的现象,

文档评论(0)

peace0308 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档