文档介绍:摘要随着软件的复杂度和规模不断增长和扩大,业务数据量也在不断增长,各种商业系统对于数据库的依赖程度也越来越强。由于面向对象在前台应用软件的广泛应用,并且在持久化对象的存储机制中占主导地位的是关系数据库,所以需要’套完善的对象/关系映射机制将内存对象的数据持久化到关系数据库中,因此对象/关系映射已成为目前商业软件开发中重要的一部分。面向对象的软件使用关系数据库作为其存储机制意味着数据在对象模型和关系模型问的转换。对象模型基于软件工程的一些原理,而关系数据模型则基于数学原理,两种模型理论基础的不同导致了它们之间的“阻抗不匹配”甊褂霉叵凳菘獯娲⒊志没韵笫本托枰=小岸韵螅叵涤射”。对象/关系映射是指这样的一种操作:它试图将对象的状态映射到关系数据库的数据上,以便提供透明的持久性。本文主要研究了以下几个方面:对象/关系映射中的理沦背景,介绍了对象模型和关系模型,以及两者映射时会遇到的问题。类与数据库表的映射方法,对象之间关系的映射的具体策略,这是对象/关系映射的变换规则。对象/关系映射的各种解决方案,技术,这是对象/关系映射的具体实现方法。主要的三类技术分别是:基于反射的,基于代码生成的,基于字节码操纵的。介绍了,荌模甆平台上的版本。现阶段分斜冉铣晒Φ囊桓觥提出了自己的一种映射方法,通过使用酰甆中的属性唇杏成洹使用属性进行映射,相比较惺褂肵文件进行映射而言,使得映射更为方便,更加直观,不容易出错。本文试着给出了通过属性映射的部分实现。并且使用例子进行了测试。关键词:对象/关系映射,对象持久化,面向对象,关系数据库,
/海甆“/琽—痯,.—.疪琺產..畐.“”..埃,畉甌甌,....
.:/琌琌,.琣.
作者签名榈际η或啡掌冢河憬簋立圣励立。:芝豪荩豪论文使用授权声明论文独创性声明本论文是我个人在导舞指导下述行熬磷究工Ъ叭■О蒸鸹蔷砍晒论文中除了特潮加以标注和致谢的施方外,不包含其毪入或其德机构已经发表或撰写过的研究成果。其他闻志对本研究的启发和所做的贡献均已在论文中作了明确的声明并表示了谢意。本人闻意上海海事大学有关保留、使霜学位论文的艇宠,霹:学校有权保留送交论文复印件,允许论文被查阅和借阅;学校可以上网公布论文的全部或部分内容,也可以采用影印、缩印或者其他复印手段保留论文。保密的论文在解密后遵守此规定。作者签名:
引言数据是任何计算机应用程序最重要的方面之一。从某个方面看,计算机应用程序的核心是使某人或另一台计算机能够访问其数据。在企业环境中,数据不仅必须是可访问的矗胗没Ы缑媪硬匆弧盗幸滴窆嬖蚬芾,而且还必须是持久的。持久数据存储就是即使在服务器崩溃的情况下仍然存在的数据存储。持久数据存在于应用程序的活动内存之外,通常在数据库或者平匠文件系统中。虽然持久数据被读入内存以供使用或修改,但它始终被写到外部数据存储中以长期存储。自从世纪年代面向对象技术出现,数十年来该技术在广度和深度欢戏展、成熟、逐渐成为被广泛采用的行业标准,面向对象的应用程序开发目前已经是信息技术的主流。几乎所有的应用程序都需要在一个持久化的存储系统绻叵凳菘或面向对象的数据库写娣藕腿』匦畔ⅲ悦嫦蚨韵蟮挠τ贸绦蚨哉庀畛志檬据存储工作就围绕着持久化对象展开。持久化对象就是需要被存储在持久化存储系统中的对象。对于对象的持久化存储系统,可以选择对象数据库、对象关系数据库、关系数据库甚至层次数据库或普通数据文件。面向对象数据库是数据库技术发展的产物,其主要思想是直接以对象的形式将对象存储到数据库中,这样就可以不需要了。然而嫦蚨韵笫菘却并没有被市场认为是关系型数据库奶娲摺T蚝芏啵┤绱覴思维到思维需要跨越一大步。你需要花比较长的时间学习新技术,才能够正确地让运行。关系型数据已经非常正确的运行很多年了。等等。所以本文的映射中也不考虑。由于关系数据库的理论非常完善,并且得到了数十年的实践考验,无论从性能还是数据完备性的考虑,目前关系数据库都有着无可比拟的优势。所以现阶段开发软件系统时在使用面向对象技术的同时常常不得不适用关系型数据库进行持久数据存储。面向对象的应用程序开发目前已经是信息技术的主流,同时大多数面向对象的软件项目都是从关系数据库中访问数据。这一事实对软件设计师和开发人员来说既有积极的含义又有消极的含义。从积极的方面看,面向对象技术和关系数据库都各有十年的发展,它们都通过实践证明了它们的可用性。从消极的方面看,对象模型和关系型数据库模式之间映射很困难。人们已经把大量的努力投入到面向对象软件系统中对象模型和关系型数据库的关系模型之间的映射中,最后得到的仍然是混合结果。针对这一现状,本文拟着眼于对象系统中类及其实例与关系数据库中表的映射这一课题进行探讨和研究。本文的主要内容如下:第一章通过分析和比较关系模型和对象模型介绍了对象/关系映射的基本概念