- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UML类图与关系数据库之间的映射策略
摘要:UML是目前面向对象程序设计中的一种标准的建模技术。在关系数据库系统的设计过程中,我们可先利用UML建立商业模型,然后将其映射成表。本文主要讨论如何将UML类图中的类映射成表的策略。
关键词:UML 类 表 关系 建模 映射
????? 概论
在关系数据库设计中,用来创建数据库逻辑模型的标准方法是使用实体关系模型(ER模型)。ER模型的中心思想是:可以仅通过实体和它们之间的关系合理地体现一个组织的数据模型。但这样做似乎对描述一个组织的信息过于简单化,并且词汇量也远远不足。所以,迫切需要使用更加灵活、健壮的模型来代替ER模型。
标准建模语言UML是由世界著名的面向对象技术专家发起的,在综合了著名的Booch方法、OMT方法和OOSE方法的基础上而形成的一种建模技术,它通过用例图、类图、交互图、活动图等模型来描述复杂系统的全貌及其相关部件之间的联系。UML可以完成ER模型的所有建模工作,而且可以描述ER模型所不能表示的关系。
在UML中,类图主要用于描述系统中各种类及其对象之间的静态结构。在关系数据库领域中,类与表相对应。本文主要讨论将UML类图中的类及其对象映射成关系型数据库中的表的策略。
二.UML类图中的类映射成表的策略
UML中的类图主要由类及其关系组成,而类之间的关系又可以细分为:
(1)泛化:在UML类图中,如果子类型的接口包括超类型的接口中的每个元素。则超类与子类之间构成泛化关系。泛化通常可以用继承或授权的方式实现。
(2)关联:在UML类图中,关联表示类的实例之间存在的某种关系。它通常可以有1对1、1对多和多对多等情形。
(3)聚集:在UML类图中,聚集描述了部分与整体之间的关系。
(4)组成:在UML类图中,组成由聚集演变而成,它表示一个部分对象仅属于一个整体,并且部分对象通常与整体对象共存亡。
下面结合例子,分别讨论在将类映射成表的过程中这些关系的实现技术。
假设,有一个电脑公司专门从事软件开发,其项目主要由项目开发部门承担,它们之间构成多对多的关联(即一个项目可由多个部门承担,而一个部门又可以承担多个项目的开发工作);项目开发部门由经理及一般职员组成,项目开发部门和组成人员之间构成聚集关系,而人(抽象类)又可以进一步和一般职员及经理两个子类之间构成继承关系;每个项目具有一定的属性,它们之间构成组成关系。
综上所述,其主要关系的UML类图如图1所示。
项目开发部门部门名称
项目开发部门
部门名称
项目
项目
开始时间
结束时间
* *
经理职位补贴?
经理
职位补贴
?
?
人Abstract姓名
人Abstract
姓名
?
项目属性
规模属性
?
?
?
?
?
职员工作类别
职员
工作类别
?
图1
1.将类图中的属性类型映射成表的域
域的使用提高了设计的一致性,且优化了应用的移植性。简单的域是非常容易实现的,在映射时仅需替换相对应的数据类型和数据尺寸。但要注意:有时可能要求在域的约束中加入SQL的Check串(如限定域的取值范围等)。
2.将类的属性映射成表的字段
一般地,可将类的属性直接映射成表的一个字段,但要注意以下两种特殊情况:
(1)并不是类中的所有属性均是永久的。例如,发票中的“合计”属性可由计算所得而不需保存在数据库中,此时,该类属性(称为派生属性)映射成个0个字段。
(2)一般地,类中的属性是单值的,但如果在类中存在多值属性,则该属性映射成多个字段。
3.将类直接或间接地映射成表。
将UML类图中的类映射成表时,可针对类间的不同关系,采用下面介绍的各种策略。
首先,在关系数据库中,一个关键问题是表主键的唯一性策略的选取。适当的方案能优化继承、组成等类之间的关系的实现。为此,可以在处理数据库关系时嵌入对象标识符(OID)的概念,即采用对象标识符OID(对象唯一的标识符)作为相应的数据库中所有表的主键,从而简化了关系数据库的主键方案,使数据库发生更新时,不会出现完整性问题,并且还可以避免在数据库操作时的诸多限制。但要注意的是,OID不应包含有商业内涵(这一点可能和传统的关系理论相悖),因为任何具有商业意义的字段不在控制范围之内,从而设计者面临值和规划改变的危险。
(1)继承的实现
策略一:将整个类层次映射为单个数据库表。
类层次中的所有类映射为单个的数据库表,表中保存所有类(基类、子类)的属性。例如,图1中人、职员及经理之间的关系的实现如图2所示。
您可能关注的文档
- 医院感染监测制度流程.doc
- 医院感染暴发事件处置流程.doc
- 2020强基计划政策解析.pptx
- 小学三年级综合实践活动计划五篇.docx
- 好医生--急性冠脉综合征患者的心律失常处理考试 国家I类 第一节试题及答案.doc
- 土石方开挖承包合同模板4篇.docx
- 应急预案管理体系.doc
- 2018《护士条例》执行及制度落实情况检查总结.docx
- (完整word版)个人简历模板电子版集合.doc
- 幼儿园安全工作总结(精选8篇).doc
- 第十一章 电流和电路专题特训二 实物图与电路图的互画 教学设计 2024-2025学年鲁科版物理九年级上册.docx
- 人教版七年级上册信息技术6.3加工音频素材 教学设计.docx
- 5.1自然地理环境的整体性 说课教案 (1).docx
- 4.1 夯实法治基础 教学设计-2023-2024学年统编版九年级道德与法治上册.docx
- 3.1 光的色彩 颜色 电子教案 2023-2024学年苏科版为了八年级上学期.docx
- 小学体育与健康 四年级下册健康教育 教案.docx
- 2024-2025学年初中数学九年级下册北京课改版(2024)教学设计合集.docx
- 2024-2025学年初中科学七年级下册浙教版(2024)教学设计合集.docx
- 2024-2025学年小学信息技术(信息科技)六年级下册浙摄影版(2013)教学设计合集.docx
- 2024-2025学年小学美术二年级下册人美版(常锐伦、欧京海)教学设计合集.docx
文档评论(0)