PowerDesigner中对象关系映射建模.docVIP

  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文档。上传文档
查看更多
PowerDesigner中对象关系映射建模.doc

PowerDesigner中的对象与关系映射建模 Sybase 公司PowerDesigner上海研发中心 余亚,王晓昀 概述 从80年代中期开始,随着C++语言的成功,面向对象语言已经成为软件开发中的主导语言。现在很多商用软件,尤其是企业信息系统,都是使用面向对象语言进行开发的。应用面向对象方法,我们通过类来抽象不同类别的实体,属性来表示实体的静态特征,关联来抽象实体间的联系,继承来抽象类别的包含关系。 很多的应用程序都需要进行数据存储,关系型数据库是最常用的数据管理系统。在关系型数据库中,表、列和外键是抽象数据的基本元素。关系型数据库是建立在关系计算和布尔代数基础之上的,SQL是数据库的操作语言,通过关系运算,连接、联合等,来操作数据。 我们很容易的看出,面向对象模型和关系模型是不完全匹配的。比如 1. 对象可以存储到多张表,表也可以存储多个类的对象。 2. 对象之间的关系是双向的,而表之间的关系是单向的。 3. 对象之间有继承关系,表之间没有。 为了解决这种不匹配,人们定义了很多映射模式来建立两种模型间的对应关系。这些映射模式逻辑上解决了模型间的不匹配,使得面向对象程序能够正确地和关系关系型数据库进行交互,但是对于程序的开发,仍然有很多问题需要解决。 问题 对于设计人员来说,他们需要找到并且描述这两种模型元素间的映射关系,以便编程人员能够正确地实现数据的存储和查询。现在很多建模工具仅提供其中一种模型的支持,比如Together仅支持对象建模,ERWin仅支持数据建模。即使同时支持两种模型,这种支持也很不完整,比如Rose中的数据建模功能。分析设计人员常常需要两种不同的工具来进行建模,如果他们想描述这两种模型元素间的对应关系,他们只能通过文档或者表格的形式。这很容易产生错误,并且如果模型发生改变,这些文档需要手工更改,容易造成不一致,维护起来很困难。 对于编码人员,他们需要应用某种技术来实现模型的这种对应关系。如果通过语言提供的数据库访问接口,比如Java的JDBC或者.Net的ADO.Net,对于每一个对象的每一个存储操作,编码人员需要编写存取操作的SQL,数据库控制和访问代码,这是一项繁琐、重复性的劳动。即使应用O/R 映射的框架,比如Hibernate, EJB 3.0或者.Net平台的NHibernate,他们需要编写映射文件或者通过标记来定义O/R映射框架所需要的映射元数据。这些映射元数据只不过是我们在设计阶段定义的映射关系另外一种表现方式,转换成XML或者标记的方式,无疑这种转换增加了错误的可能性和维护的难度。 PowerDesigner解决之道 PowerDesigner提供对于多达8种模型的支持,其中包括面向对象模型和关系数据模型。作为一个集成的企业建模工具,PowerDesigner并不是简单的将几种模型工具罗列在一起。各种模型相互之间可以建立关联,通过这种关联,它提供了企业模型统一、一致的视图。其中模型间的映射和自动生成是建立模型间关联重要的手段。 模型可以描述系统的静态特征和动态特征,而静态特征可以用来表述系统的持久状态,比如面向对象模型中的实体类,数据库模型的表,XML模型中的元素节点等。在PowerDesigner中,我们可以在各种可以描述持久状态模型间建立映射,比如XML模型到面向对象模型间的映射,面向对象模型到关系数据模型的映射等。下面我们就来看一下,PowerDesigner是如何支持面向对象模型到关系模型的映射的。 1.1 对象/关系映射 下表列出了PowerDesigner中面向对象元素和关系模型元素间的对应关系: OOM 元素 PDM 元素 域 域 类 表 接口 无 属性 列 标识符 键 操作 (具有存储过程范型) 存储过程 操作 (具有存储功能范型) 存储功能 关联 外键或者表 关联类 表和两个指向关联的类所生成表的外键 继承 表或者外键 依赖 无 实现 无 引用 无 在PowerDesigner中,我们可以通过三种方式来建立面向对象模型和关系模型间的映射: 1. 手工建立映射。 2. 自动模型生成。 它们分别适用于不同的开发需求,下面我们就来看如何通过这两种方式来建立映射。 1.2 手工建立映射 这种方式适用于以下几种情况: 1. 在已经存在的模型间建立映射。企业的信息系统是一个异构的环境,很多应用程序和数据库都是独立开发的,它们具有不同的模型,如果它们之间需要进行数据交互,则需要建立它们之间的映射,比如新的ERP系统中和企业原有的数据库间的映射。 2. 数据库和程序由不同的组负责设计。大型的企业应用程序可能包含很多业务子系统,每个业务子系统只考虑如何实现它自己的业务需求,而数据库设计要从整体出发,考虑整个应用程序的需求。对于每个业务模块,需

文档评论(0)

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

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

1亿VIP精品文档

相关文档