Java Hibernate中的级联是什么?

Java Hibernate中的级联是什么?,java,hibernate,jakarta-ee,Java,Hibernate,Jakarta Ee,Hibernate中的级联是什么?我在map标记中看到了一个cascade属性。这意味着什么 比如cascade=all是什么意思?我读到的还有其他属性,如 cascade=“none | save update | delete | all delete orphan | delete orphan”级联是关于持久性操作,涉及一个对象通过关联传播到其他对象。级联可以应用于各种Hibernate操作,并且通常是可传递的。定义关联的注释的“cascade=…”属性表示应该为该关联级联哪些操作 Ca

Hibernate中的级联是什么?我在
map
标记中看到了一个
cascade
属性。这意味着什么

比如
cascade=all
是什么意思?我读到的还有其他属性,如

cascade=“none | save update | delete | all delete orphan | delete orphan”

级联是关于持久性操作,涉及一个对象通过关联传播到其他对象。级联可以应用于各种Hibernate操作,并且通常是可传递的。定义关联的注释的“cascade=…”属性表示应该为该关联级联哪些操作

Cascade=“all”表示应用所有主要级联类型。从Hibernate 5.3开始,这些类型包括:

  • “删除”/“删除”
  • “分离”/“逐出”
  • “合并”
  • “锁”
  • “坚持”
  • “刷新”
  • “复制”
  • “保存更新”/“更新”
(其中一些级联类型名称已过时和/或已弃用。)

还有三种复合类型:

  • “all_delete_orphant”-与“all”的意思相同,另外还支持删除级联中孤立的实体
  • “删除孤儿”-指“删除”加上孤儿删除
  • “无”-表示无级联

级联是Hibernate使用可传递持久性模型的方法。可传递持久性是一种技术,它允许您将持久性自动传播到瞬态(尚未保存在数据库中的对象)和分离的子图(子对象)。例如,已持久化父对象的新创建的子对象应自动成为持久化,而无需调用save()或persist()方法

Hibernate中的级联有许多选项,如保存更新、持久化、合并、删除等。Cascade='all'是应用所有级联选项的一种方法