- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
轻量型ORM在商贸ERP项目开发中的实践分析
2015年2月 第一期 含 55
轻量型 ORM在商贸 ERP项 目开发 中的实践分析
方海军
(杭州I钢铁集团公司信息管理部 杭州 310022)
摘 要:通过在软件开发中数据持久层引入轻量型ORM,并配合使用数据设计规约和反向代码生成工具,
能有效规范实体层和数据访 问层的代码 ,同时减少相应代码的编写工作量,降低开发人员不必要
的工作付出,使其能集中精力处理业务规则、业务逻辑和核心用户体验等,以达成软件功能范围、
品质和交付期限等要求。
关键字 :ORM;数据访问层 ;数据库设计 ;反 向代码工程
编码量仅是为了实现数据对象的持久存储,降低了
0 前言
开发人员代码的生产效率,不利于集中精力处理特
对象一关系映射 (Object/RelationMapping,简称 定领域、业务场景中业务规则和核心控制逻辑,不
OHM),是随着面向对象的软件开发方法发展而产 利于推进快速软件开发的进程。
生的。面向对象的开发方法是当今企业级应用开 通常设计一个对象,需要设计若干个属性,每
发环境中的主流开发方法,关系数据库是企业级应 一 个属性,会有名称、数据类型、数据长度、有效性
用环境中永久存放数据的主流数据存储系统。对 规则等,而这些,在数据库的实体里是一一对应的,
象和关系数据是业务实体的两种表现形式,业务实 如果能实现一次设计就好了。于是,大部分人使用
体在 内存中表现为对象,在数据库中表现为关系数 的是由D到O的设计方式,就是首先用DBMS提供
据。内存 中的对象之间存在关联和继承关系,而在 的实体设计工具,设计 出实体,然后再用 C#去编
数据库中,关系数据无法直接表达多对多关联和继 写对应的对象。这种开发场景存在两个问题:
承关系。因此,对象一关系映射 (ORM)系统一般 以 一 是这样使我们的程序员不得不同时做 DBA
中间件的形式存在 ,主要实现程序对象到关系数据 和程序员两份工作;二是业务对象和数据库关系表
库数据的映射。面向对象是从软件工程基本原则 结合的十分紧密,会导致当需要更换 DBMS时,不
(如耦合、聚合、封装)的基础上发展起来的,而关系 得不再次重新设计关系实体或用其他工具实现转
数据库则是从数学理论发展而来的,两套理论存在 换。
显著的区别。 最重要的是后续的工作,因为业务对象往往是
为了提高生产效率和解决这个不匹配的现象, 随时变化的,每一次变化,你不得不去修改大量的
对象关系映射技术应运而生 。字母 0起源于 “对 代码,同时还要去保持关系数据表的同步变化,这
象”(Object),而 R则来 自于 “关系”(Relationa1)。几 不仅是一个量大的工作,同时也是一个非常细致,
乎所有的程序里面,都存在对象和关系数据库。在 并且是繁琐的工作。
业务逻辑层和用户界面层 中,我们是面向对象的。 随着社会和信息技术发展,企业对信息化建设
当对象信息发生变化的时候,我们需要把对象的信 的要求、期望越来越高,对实施周期的要求越来越
息保存在关系数据库中。 严格,一个项 目从立项到上线时间,往往有严格的
要求,团队要实现即定的目标需要将主要精力集中
l 引入 ORM的必要性
文档评论(0)