`
zhaobin87
  • 浏览: 77035 次
  • 来自: 深圳
社区版块
存档分类
最新评论

hibernate中inverse的用法

阅读更多

Inverse是hibernate双向关系中的基本概念。inverse的真正作用就是指定由哪一方来维护之间的关联关系。当一方中指定了“inverse=false”(默认),那么这一方就有责任负责之间的关联关系,说白了就是hibernate如何生成Sql来维护关联的记录

为了节省数据库资源,省却不必要的update语句,我们一般建议在一对多双向关联关系中,将一方的inverse属性设置为true,即将主外键的关系交由多方来维护。
打个比方:在一个公司中,是老板认识所有的员工容易,还是所有员工认识老板容易?

分享到:
评论

相关推荐

    hibernate inverse和cascade的详细讲解

    对于`one-to-one`和`many-to-one`关系,它们仅包含单个对象的引用,因此不需要使用`inverse`。 - **Inverse 的值** - **默认值**:`inverse`的默认值为`false`,表示对集合对象的修改会被反映到数据库中。 - **`...

    hibernate集合映射inverse和cascade详解.txt

    在深入探讨Hibernate集合映射中的`inverse`与`cascade`属性之前,我们首先需要理解Hibernate框架的基本概念。Hibernate是一个开放源代码的对象关系映射(ORM)框架,它为Java应用程序提供了一种将对象模型与数据库...

    Hibernate_级联关系说明_-_关于cascade和inverse的用法

    在探讨Hibernate框架中的级联操作(cascade)与控制权反转(inverse)之前,我们需要先对Hibernate有一个基本的理解。Hibernate是一个开放源代码的对象关系映射(ORM)框架,它为Java应用提供了一种将对象模型映射到...

    hibernate 级联(cascade和inverse)一对多

    在Java的持久化框架Hibernate中,级联操作(Cascade)和反转(Inverse)是两个重要的概念,它们主要用于管理对象关系模型中的关联关系。在一对多的关系中,这些特性可以帮助简化数据操作,提高代码的可读性和维护性...

    inverse和cascade使用阐述

    如果我们在ORM工具如Hibernate中定义这种关系,可以设置其中一个关联为“inverse”,表示这个关联的维护责任不在该端。换句话说,更新或删除部门时,相关的员工记录不会被自动更新或删除,反之亦然。这样可以避免...

    Hibernate电子书(全)

    在关系数据库中,集合类型的数据(如Set、List、Map)不能直接存储,而Hibernate提供了将这些集合类型映射到数据库中的机制,如使用`Set`和`Map`映射关联关系,这使得Java对象的集合属性可以直接与数据库中的记录...

    Hibernate开发租房系统2 源码

    描述提到“使用cascade和inverse优化区和街道关联关系”,这意味着我们将深入理解Hibernate的cascade和inverse属性,以及它们在双向一对多关联关系中的应用。 Hibernate是Java领域中广泛使用的对象关系映射(ORM)...

    hibernate bag 集合映射

    标题中的“hibernate bag 集合映射”指的是Hibernate框架中的一种关系映射机制。Hibernate是一个流行的Java ORM(对象关系映射)框架,它允许开发者将数据库表与Java类进行映射,使得在处理数据库操作时可以使用面向...

    hibernate的联合主键怎么设置

    - 相反,如果两边都是 `inverse="false"` 或者默认值,Hibernate 会在每次关联的添加或删除时,都在中间表中进行相应的插入和删除操作,可能会导致重复的插入。 因此,通常我们会根据业务逻辑来合理设置 `inverse`...

    Hibernate中文帮助文档

    本中文帮助文档详细介绍了Hibernate的核心概念、配置、API使用以及最佳实践,是学习和掌握Hibernate不可或缺的参考资料。 1. **Hibernate概述**: - Hibernate是Java世界中最为流行的数据持久化框架之一,由Jboss...

    hibernate中one2many映射

    在Hibernate的配置文件(hibernate.cfg.xml)中,我们需要指定使用的数据库类型(这里是MySQL)及连接参数: ```xml <property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect <property name="...

    hibernate中many2many映射

    在本场景中,我们探讨的是如何在Hibernate中配置Many-to-Many映射,并使用MySQL数据库来存储数据。我们将通过映射文件和Domain对象来理解这一过程。 首先,我们需要了解Many-to-Many关系的基本概念。在关系数据库中...

    hibernate中文参考文档

    - **多对多(Many-to-Many)**: 使用`<set>`标签配合`inverse="true"`属性或`@ManyToMany`注解。 #### 八、高级特性 - **懒加载(Lazy Loading)**: 只有在真正需要的时候才加载关联对象的数据。 - **批量加载(Batch ...

    Hibernate笔试题

    3. Hibernate概述:Hibernate是一个基于Java的ORM(Object-Relational Mapping)框架,它提供了一种在关系数据库和面向对象编程之间建立映射的方法,使得开发人员可以使用对象而不是SQL来操作数据库。a)、b)正确,c)...

    hibernate学习笔记

    在Hibernate中,`inverse`属性通常与双向关联的实体一起使用,它决定了哪一方实体在进行删除或更新关联时拥有控制权。例如,在一对多关系中,如果`inverse`属性被设置为`true`,那么这一方将不会主动触发对关联实体...

    hibernate的延迟检索在轻量级J2EE框架中的应用

    当执行`session.load(User.class, "1")`后,即使调用了`getAddresses()`方法,Hibernate也不会立即查询地址集合,除非显式地遍历集合或访问集合中的某个元素。 ```java User user = (User) session.load(User.class...

    gilead hibernate lazyload例子

    在Flex中使用Gilead和Hibernate的懒加载,首先需要确保在Hibernate配置文件中对关联实体设置了懒加载属性。例如,如果有一个`User`类和一个`Address`类,`User`中包含一个`List<Address>`,那么在`User`的映射文件中...

    Hibernate 多表映射关系配置

    以上就是 Hibernate 中的一对多、多对一和多对多关系的配置和使用方法。理解这些关系并正确配置它们是充分利用 Hibernate 框架的关键。在实际项目中,根据业务需求选择合适的关系映射方式,并灵活运用,能够简化...

Global site tag (gtag.js) - Google Analytics