一、一对唯一外键关联映射——单向
1. 一对唯一外键关联映射是多对一关联映射的特例,可以采用<many-to-one>标签,指定多的一端的unique=true,这样就限 制了多的一端的多重性为一,通过这种手段映射一对一唯一外键关联
2.领域模型图:

3.配置
Person.hbm.xml:
<class name="com.bjsxt.hibernate.Person" table="t_person">
<id name="id">
<generator class="native"/>
</id>
<property name="name"/>
<many-to-one name="idCard" unique="true"/>
</class>
IDCard.hbm.xml:
<class name="com.bjsxt.hibernate.IdCard" table="t_idcard">
<id name="id">
<generator class="native"/>
</id>
<property name="cardNo"/>
</class>
二、 一对唯一外键关联映射——双向
1. 一对一唯一外键关联双向,需要在另一端(idcard),添加<one-to-one>标签,指示hibernate如何加载其关联对象,默认根据主键加载person,外键关联映射中,因为两个实体采用的是person的外键维护的关系,所以不能指定主键加载person,而要根据person的外键加载,所以采用如下映射方式:
<one-to-one name="person" property-ref="idCard"/>
2.领域模型图:

3.具体配置:
Person.hbm.xml:
<class name="com.bjsxt.hibernate.Person" table="t_person">
<id name="id">
<generator class="native"/>
</id>
<property name="name"/>
<many-to-one name="idCard" unique="true"/>
</class>
IDCard.hbm.xml
<class name="com.bjsxt.hibernate.IdCard" table="t_idcard">
<id name="id">
<generator class="native"/>
</id>
<property name="cardNo"/>
<one-to-one name="person" property-ref="idCard"/>
</class>

- 大小: 13.3 KB

- 大小: 14.7 KB
分享到:
- 2009-10-16 17:31
- 浏览 1109
- 评论(2)
- 论坛回复 / 浏览 (2 / 2857)
- 查看更多
相关推荐
Hibernate 一对一唯一外键关联映射详解 Hibernate是一种流行的Java持久层框架,提供了多种关联映射方式,其中一对一唯一外键关联映射是一种常见的关联方式。在本文中,我们将详细介绍Hibernate一对一唯一外键关联...
总结,通过上述步骤,我们可以使用Hibernate的`@OneToOne`注解实现一对一唯一外键关联映射,并实现双向关联。在实际项目中,应根据业务需求选择合适的级联操作和关联维护方式,以确保数据的完整性和一致性。
通过上述步骤,我们就成功地建立了`Person`和`IdCard`之间的一对一唯一外键关联。在数据库中,`Person`表将包含一个`idcard_id`外键字段,用于引用`IdCard`表的主键。 ### 5. 注意事项 - 在一对一的关联中,`@...
在本案例中,我们将详细探讨“hibernate一对一唯一外键关联映射(单项关联)”。 首先,一对一关联分为两种类型:单向关联和双向关联。单向关联意味着在一个实体类中存在对另一实体的引用,而另一实体类中没有相应...
本篇将深入探讨Hibernate中的一对一唯一外键关联映射,特别是双向关联的实现。 ### 1. 一对一关联概述 一对一关联意味着一个实体只能与另一个实体的单一实例相关联,这种关系通常出现在两个表之间,其中一个表的...
总结,Hibernate的一对一唯一外键关联为开发者提供了一种方便的方式来处理两个实体之间的紧密联系。无论是在单向还是双向关联中,理解其配置、映射以及性能影响都是至关重要的。通过熟练掌握这些知识,我们能够更好...
总的来说,Hibernate的一对一唯一外键关联(单向关联)是通过在一方实体中定义另一方实体的引用,并通过注解或XML映射文件进行配置来实现的。这种关联方式简化了对象关系的管理,但同时也需要开发者在操作关联对象时...
本篇文章将深入探讨两种实现一对一关联的方式:主键关联(Primary Key Join)和唯一外键关联(ForeignKey Join),并结合源码和实际工具进行详细讲解。 一、主键关联(Primary Key Join) 1. 主键关联的概念: ...
本篇将深入探讨在Hibernate中实现一对一唯一外键的双向关联。 **一、配置一对一关联** 在Hibernate中,一对一关联可以通过以下两种方式建立: 1. **通过主键关联(Primary Key Join)**:这种关联方式下,一方的...
在Java的持久化框架Hibernate中,`@OneToOne`注解用于表示一对一的关联关系,而唯一外键一对一双向关联则是这种关系的一种具体实现方式。这篇文章将深入探讨这一概念,帮助你理解如何在实际开发中应用。 首先,我们...
本篇将详细讲解如何使用Hibernate进行一对一单向外键关联,并且该关联涉及到联合主键的注解配置。 首先,一对一关联可以分为两种类型:单向和双向。在单向一对一关联中,只有一个实体知道另一个实体的存在,而另一...
**标题详解:**“Hibernate教程04_关系映射之一对一单向外键关联” 在Hibernate框架中,关系映射是数据库表之间的关联在对象模型中的体现。本教程重点讲解了一对一(One-to-One)单向外键关联的实现方法。在数据库...
**标题详解:**“Hibernate ORM - 一对一外键关联关系” 在Java开发中,Hibernate是一个非常流行的ORM(对象关系映射)框架,它允许开发者用面向对象的方式处理数据库操作,从而减少与SQL的直接交互。"一对一(One-...
本话题主要探讨的是Hibernate中的一种关联映射方式——一对一(One-to-One)单向外键关联。这种关联模式通常用于两个实体之间存在唯一对应的关系,例如一个用户对应一个唯一的账户。 在Hibernate中,一对一关联可以...
在Hibernate中,实现一对一外键关系有几种方式,包括使用主键关联(Primary Key Association)和使用外键关联(Foreign Key Association)。我们首先来看主键关联: 1. **主键关联**:在这种模式下,一方实体的主键...
Grails是一个基于Groovy语言的开源Web应用框架,它提供了一种便捷的方式来创建数据库表结构,包括外键关联。在开发过程中,我们经常需要对数据库的结构进行管理和维护,例如通过DDL(Data Definition Language)脚本...