`
fehly
  • 浏览: 248650 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Hibernate映射多对一关联关系

阅读更多

多对一的单向关联

表于表的关联可以分为一对一,一对多,多对一和多对多

 

例如在网络商城中,一个大的商品分类下,有多个小的商品分类,一个小的商品分类下,有多个商品

 

多对一的单向关联

 

例如

 

tab

 

<many-to-one name="category" class="com.rbh.examples.Category" outer-join="true">
         	<column name="category_id"></column>
        </many-to-one>

 一对多的关联

Product与Category是多对一的关系,Product对象维护着对Category对象的参考,如果由Category对象维护多个Product对象的管理,就是一对多单向关联

 

 

        <set name="products">
        	<key column="category_id"></key>
        	<one-to-many class="com.rbh.examples.Product"/>
        </set>

 

 

一对多双向关联

<many-to-one name="category" class="com.rbh.examples.Category" fetch="select">
            <column name="CATEGORY_ID" precision="8" scale="0" />
        </many-to-one>

 

 

 

 <set name="products">
            <key>
                <column name="CATEGORY_ID" precision="8" scale="0" />
            </key>
            <one-to-many class="com.rbh.examples.Product" />
        </set>

 

 

级联(cascade)

主动方对象执行操作时,被关联对象(被动方)是否同步执行同一个操作

 

<set name="products" cascade="save-update">
  <key column="category_id"></key>
  <one-to-many class="com.rbh.examples.Product">
</set>

 

级联(cascade)

none  cascade的默认值,表示关联对象之间没有任何级联操作。

save-update 表示主动方对象在调用save()、update()和saveorUpdate()方法时对被关联对象进行级联操作

delete 表示主动方对象在调用save()方法时对被关联对象进行级联操作

delete-orphan 只应用于一对多关联,表面主动对象调用delete()方法,此时不被任何一个关联对象所引用被关联对象会删除.

all  关联对象之间全部操作都顺着关联关系级联

 

 

控制反转(Inverse)

Hibernate中的一对多的单向或者双向关联的情况下,我们可以将"一"方控制权给"多"方,称为控制反转(inverse)

 

<set name="prodects" cascade="save-update" inverse="true">
       <key column="category_id"></key>
       <one-to-many class="com.rbh.examples.Product">
</set>

 

 

分享到:
评论

相关推荐

    Hibernate映射一对多关联关系

    ### Hibernate映射一对多关联关系 #### 知识点概览 - **概念解析**:一对多(One-to-Many)关联关系的概念及其在Hibernate中的实现方式。 - **域模型设计**:创建具有一个实体与多个实体关联的域模型。 - **关系...

    hibernate多对多关联映射

    在Java的持久化框架Hibernate中,多对多关联映射是一种常见的关系数据库模型映射方式,用于处理两个实体之间存在多个实例互相关联的情况。本文将深入探讨Hibernate如何实现多对多关联映射,并通过实际例子解析相关...

    Hibernate双向一对一关联映射(注解版)

    本主题聚焦于“Hibernate双向一对一关联映射”的注解实现,这是一种高级的数据库设计模式,用于处理两个实体之间一对一的关系。 在Hibernate中,一对一关联映射分为单向和双向。单向一对一映射通常涉及一个实体持有...

    hibernate关联映射详解

    包含《多对多双向关联映射》《多对一单向关联映射》《多对一双向关联映射》《一对多单向关联映射》等文档,并有图解及例子,非常适合新手学习,尤其是刚刚接触hibernate,对映射关系不清楚的。。。。

    hibernate多对一单向关联关系实现源码

    在Java的持久化框架Hibernate中,多对一(ManyToOne)关联关系是一种常见的对象关系映射(ORM)场景。这种关系通常出现在一个实体类拥有多条与另一个实体类相关的记录,而另一个实体类可能只有一条对应的记录。例如...

    Hibernate一对一主键关联映射(双向关联)

    在Java的持久化框架Hibernate中,一对一(One-to-One)关联映射是一种常见的关系数据库模型映射方式。这种关联通常发生在两个实体之间,且每个实体都只有一个对应的实例。本篇文章将详细探讨双向一对一主键关联映射...

    Hibernate集合映射与关联关系

    本主题将深入探讨Hibernate集合映射与关联关系,包括"student与Score的Map集合关系"、"student与class的多对一"以及"一对多映射"的概念。 首先,让我们理解一下Hibernate中的集合映射。在关系型数据库中,一个实体...

    hibernate多对多关联映射(单项关联)

    在Java的持久化框架Hibernate中,多对多关联映射是一种常见的关系模型,它用于处理两个实体类之间存在多个对应关系的情况。这篇博客"hibernate多对多关联映射(单项关联)"深入探讨了如何在Hibernate中实现这种映射...

    hibernate一对一关联关系

    在实体类之间,Hibernate支持多种关联关系,包括一对一(One-to-One)、一对多(One-to-Many)和多对多(Many-to-Many)。本资源主要探讨的是“hibernate一对一关联关系”。 一对一关联关系在现实世界中很常见,...

    Hibernate一对一主键关联映射(单向关联)

    这里,`@OneToOne`注解表明了与`Person`类的一对一关系,`mappedBy = "profile"`表示`Person`类中有一个属性`profile`引用了`Profile`对象。 接下来,在`Person`类中,我们不需要显式地定义对`Profile`的引用,因为...

    hibernate实现多对多关联关系源码

    在Java的持久化框架Hibernate中,多对多(Many-to-Many)关联关系是一种常见的实体间关系类型,它表示一个实体可以与多个其他实体相关联,反之亦然。本源码示例将深入探讨如何使用Hibernate来配置和管理这种复杂的...

    Hibernate 关联关系映射分类

    综上所述,Hibernate提供了丰富的关联关系映射机制,包括一对一、一对多和多对多关联,每种关联又可以细分为单向和双向,以及基于主键和基于外键的不同实现方式。正确理解和选择合适的关联关系对于构建高效、可维护...

    hibernate 单向多对多关联映射练习

    本练习主要关注的是Hibernate中的单向多对多关联映射,这是一种常见的关系数据库设计模式,用于表示两个实体间复杂的关系。 在多对多关联中,两个实体类可以相互拥有多个实例,但只在一个方向上建立关联。例如,...

    hibernate 映射关系学习入门 多对多实体映射

    本教程将带你入门Hibernate的多对多实体映射,帮助你理解如何通过源码来实现这种复杂的关系映射。 一、Hibernate概述 Hibernate是一个对象关系映射(ORM)框架,它允许我们将Java对象(实体)与数据库表进行映射,...

    hibernate一对一主键关联映射(单项关联)

    在Java的持久化框架Hibernate中,一对一(One-to-One...通过这种方式,我们可以有效地管理两个实体之间的一对一关系,提高数据模型的灵活性和完整性。在实际开发中,要根据具体业务需求选择合适的关联类型和映射方式。

    hibernate双向多对多关联映射(注解版)

    在这个“hibernate双向多对多关联映射(注解版)”的主题中,我们将深入探讨如何使用Hibernate的注解配置来处理数据库中的双向多对多关联关系。 首先,多对多关联在数据库设计中是指两个实体之间存在多个对应关系,...

    Hibernate教程05_关系映射之一对一双向外键关联

    在Hibernate中,一对一关系可以通过两种方式实现:外键关联和主键关联。本教程重点讨论的是外键关联,这意味着一方的表将包含指向另一方表的外键。双向关联意味着两个实体类都可以直接访问彼此。 接下来,我们将...

    hibernate一对一主键关联映射(双项关联)

    主键关联映射是通过将两个实体类的主键相互引用来实现一对一关系的。这种映射方式可以分为单向和双向,而这里我们关注的是双向关联,即两个实体都可以直接访问对方。 二、配置方式 1. **配置实体类** 在两个实体类...

Global site tag (gtag.js) - Google Analytics