映射组成关系,继承关系

映射组成关系,继承关系

ID:39468017

大小:311.81 KB

页数:18页

时间:2019-07-04

映射组成关系,继承关系_第1页
映射组成关系,继承关系_第2页
映射组成关系,继承关系_第3页
映射组成关系,继承关系_第4页
映射组成关系,继承关系_第5页
资源描述:

《映射组成关系,继承关系》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、映射组成关系教学内容创建具有组成关系的域模型创建粗粒度关系数据模型映射组成关系区分值类型和实体类型映射继承关系从粗粒度对象模型到精粒度对象模型为了提高程序代码的可重用性,不妨从Customer类中抽象出单独的Address类,不仅Customer类可以引用Address类,如果日后又增加了Employee类,它也包含地址信息,那么Employee类也能引用Address类。按这种设计思想创建的对象模型称为精粒度对象模型,它可以最大程度的提高代码的重用性。为了提高程序代码的可重用性,不妨从Customer类中抽象出单独的Address类,不仅Customer类可以引用Address

2、类,如果日后又增加了Employee类,它也包含地址信息,那么Employee类也能引用Address类。按这种设计思想创建的对象模型称为精粒度对象模型,它可以最大程度的提高代码的重用性。组成关系的特征Customer类与Address类之间为组成关系,它们的关系有以下特征:Address对象的生命周期依赖于Customer对象。当删除一个Customer对象,应该把相关的Address对象删除。一个Address对象只能属于某个特定的Customer对象,不能被其他Customer对象共享。CUSTOMERS表参照ADDRESS表建立关系数据模型的一个重要原则是在不会导致数据冗

3、余的前提下,尽可能减少数据库表的数目以及表之间的外键参照关系。因为如果表之间的外键参照关系很复杂,那么数据库系统在每次对关系数据进行插入、更新、删除和查询等SQL操作时,都必须建立多个表的连接,这是很耗时的操作,会影响数据库的运行性能。以下SQL语句用于查询名为“Tom”的客户的家庭地址:selectPROVINCE,CITY,STREET,ZIPCODEfromCUSTOMERSasc,ADDRESSasawherec.HOME_ADDRESS_ID=a.IDandc.NAME='Tom';粗粒度关系数据模型createtableCUSTOMERS(IDbigintnotnul

4、l,NAMEvarchar(15),HOME_STREETvarchar(255),HOME_CITYvarchar(255),HOME_PROVINCEvarchar(255),HOME_ZIPCODEvarchar(255),COM_STREETvarchar(255),COM_CITYvarchar(255),COM_PROVINCEvarchar(255),COM_ZIPCODEvarchar(255),primarykey(ID));域模型和关系数据模型域模型中类的数目比关系数据模型中表的数目多用元素来映射homeAddress属性

5、ntname="homeAddress"class="mypack.Address">

6、"/>元素表明homeAddress属性是Customer类的一个组成部分,在Hibernate中称之为组件。元素有两个属性:name:设定被映射的持久化类的属性名,此处为Customer类的homeAddress属性。class:设定homeAddress属性的类型,此处表明homeAddress属性为Address类型。用元素来映射homeAddress属性元素还包含一个子元素和一系列子元素。元素指定Address

7、类所属的整体类,这里设为customer,与此对应,在Address类中应该定义一个customer属性,以及相关的getCustomer()和setCustomer()方法:privateCustomercustomer;publicCustomergetCustomer(){returnthis.customer;}publicvoidsetCustomer(Customercustomer){this.customer=customer;}持久化Customer对象tx=s

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。