`
liuhello
  • 浏览: 69610 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

hibernate中的cascade级联

阅读更多
    hibernate中有10种不同的级联,可以用与多对一关联和集合,默认的级联为none,如上篇中的Sister和Person的对应关系为多对一(
xml 代码
  1. <many-to-one name="person" column="person_id" class="Person"/>   
 )其中cascade使用默认的值即为none这时
java 代码
  1. session.save(sister);  
,只是把sister 对象持久化到数据库中,而person对象不会被持久化(运行结果为:
java 代码
  1. Hibernate: insert into mldn.sister (name, person_id) values (?, ?)  
).如果将其配置该为
java 代码
  1. "person" column="person_id" class="Person" cascade="save-update"/>  

session.save(sister);时结果为

  1. Hibernate: insert into mldn.person (namepasswordvalues (?, ?)   
  2. Hibernate: insert into mldn.sister (name, person_id) values (?, ?)  

其中几种最常用的级联为

1,all:所有操作都传递到子实体-

-保存,更新,删除.

2,sav-update:保存和更新.

3,delete:删除.

4,delete-orphan:所有操作都传递到子实体,并删除不再与对象关联的对象.

hibernate不将级联传递到数据库它只在内部管理级联

 

sql 代码
分享到:
评论

相关推荐

    Hibernate cascade (级联).doc

    在 Hibernate 中,级联(Cascade)是一种非常有用的功能,它能够帮助开发者在处理实体之间的关联时自动执行一系列相关的操作。通过级联,当对一个实体执行某些操作时,这些操作也会自动地应用到与之关联的其他实体上...

    详解Hibernate cascade级联属性的CascadeType的用法

    详解Hibernate cascade级联属性的CascadeType的用法 cascade(级联) 级联在编写触发器时经常用到,触发器的作用是当 主控表信息改变时,用来保证其关联表中数据同步更新。若对触发器来修改或删除关联表相记录,必须...

    Hibernate的级联操作(增,删,该)

    在Hibernate中,级联操作(Cascading Operations)是一种高级特性,它使得对象之间的关联关系在数据库层面得以同步更新。当我们对一个实体对象进行操作时,可以设置级联属性,让这些操作自动传播到与之相关联的其他...

    hibernate3.2的级联关系_JavaProject

    在Hibernate中,可以通过`@OneToMany`注解来定义这种关系,并通过`cascade`属性设置级联操作,例如`CascadeType.ALL`表示所有操作都将级联。 2. **一对一(OneToOne)**:这种关系意味着两个实体之间存在一对一的...

    hibernate 级联(cascade和inverse)一对多

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

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

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

    hibernate 级联查询

    3. **配置级联**:在Hibernate的映射文件(XML或注解)中,可以指定实体之间的关联是否启用级联,例如在`@ManyToOne`、`@OneToOne`、`@OneToMany`和`@ManyToMany`等关联注解中设置`cascade`属性。 4. **级联查询...

    hibernate many-to-many级联保存,级联更新,级联删除

    在Hibernate中,级联操作可以通过`cascade`属性进行配置。主要有以下几种级联类型: 1. `save-update`:当保存或更新父实体时,会自动保存或更新所有关联的子实体。 2. `merge`:在调用`session.merge()`时,不仅...

    Hibernate中cascade和inverse应用

    在 Hibernate 框架中,`cascade` 和 `inverse` 是两个重要的概念,它们主要用于管理对象之间的持久化关系,特别是涉及到一对一(one-to-one)、一对多(one-to-many)和多对多(many-to-many)关系时。这两个属性都...

    hibernate many-to-one(多对一)及 cascade(级联).doc

    ### Hibernate Many-to-One (多对一) 及 Cascade (级联) #### 一、Many-to-One(多对一) 在数据库设计中,实体之间的关系主要包括一对一、一对多、多对多等几种类型。而在ORM(对象关系映射)框架Hibernate中,...

    Hibernate级联操作一对多demo

    在Java持久化框架Hibernate中,级联操作是处理对象关系映射(ORM)时非常重要的一个特性。级联操作允许我们在对一个实体进行操作时,自动地影响与之相关的其他实体,无需显式地处理这些关联。在这个" Hibernate级联...

    hibernate_配置cascade_及all-delete-orphan.doc

    ### Hibernate中的Cascade选项详解 #### 一、概述 在Hibernate框架中,cascade选项提供了一种管理实体间关联的便捷方式,使得对一个实体的操作能够自动地应用到与之相关的其他实体上。这对于处理复杂的数据库关系...

    hibernate级联增删改查

    首先,级联操作在Hibernate中是一种配置,用于指定当主表中的实体发生变化时,是否以及如何更新或删除关联的从表实体。级联操作可以通过在映射文件或注解中进行设置。例如,如果t_card是主表,而t_person是从表,...

    Hibernate级联操作.docx

    在 Hibernate 中,级联操作(Cascade)和反向属性(Inverse)是管理对象关系的重要概念,特别是在处理一对多(One-to-Many)或多对一(Many-to-One)关系时。 **级联操作(Cascade)** 级联操作定义了当主对象被...

    Hibernate 一对多、多对一、级联、加载、反转

    在Java持久化框架Hibernate中,一对多(One-to-Many)、多对一(Many-to-One)、级联(Cascading)、加载(Loading)和反转(Inversing)是关系映射的重要概念,它们对于理解如何在数据库和对象之间有效地管理关联至...

    hibernate3.2级联关系自身一对多双向关联

    在Hibernate中,可以通过在`@ManyToOne`或`@OneToMany`注解中设置`cascade`属性来定义级联行为。 例如,假设我们有一个`User`类,用户可以有多个朋友,同时每个朋友也可以有多个朋友,这就形成了自身一对多双向关联...

    关于Hibernate级联删除的问题.doc

    在Java的持久化框架Hibernate中,级联操作是一种非常实用的功能,它允许我们在对一个对象进行操作时,自动处理与其关联的对象。级联删除(Cascade Delete)就是其中之一,当删除一个对象时,会根据配置自动删除与之...

    hibernate注解 级联 多对一 一对多

    通过上述介绍,我们可以了解到Hibernate注解如何帮助我们在Java实体类中定义与数据库表之间的映射关系。正确使用这些注解不仅能提高开发效率,还能确保代码的清晰性和维护性。在处理复杂的实体间关系时,理解不同...

Global site tag (gtag.js) - Google Analytics