gpt4 book ai didi

java - Hibernate:我什么时候应该使用 Cascade.ALL 什么时候应该单独指定它们

转载 作者:行者123 更新时间:2023-11-30 07:40:11 46 4
gpt4 key购买 nike

我通常用注释我的一对多多对多多对一关系CascadeType.ALL,因为它们为我提供了我需要的所有功能。但我觉得这可能会导致我将来遇到一些问题。可以使用 CascadeType.ALL 吗?我应该注意什么,为什么不应该使用它?

最佳答案

级联是关于涉及一个对象通过关联传播到其他对象的持久性操作。

级联可以应用于各种 Hibernate 操作,并且通常是可传递的。定义关联的注释的 "cascade=CascadeType..." 属性说明了应该为该关联级联哪些操作。

Cascade = "all" 表示应用所有主要级联类型。

从 Hibernate 5.3 开始,这些类型是:

  • “删除”/“删除”,
  • “分离”/“驱逐”,
  • “合并”,
  • “锁定”,
  • “坚持”,
  • “刷新”,
  • “复制”,
  • “保存更新”/“更新”

(其中一些级联类型名称是旧的和/或已弃用。)

还有另外三种复合类型:

  • “all_delete_orphan” - 与“全部”含义相同,而且允许删除因级联而孤立的实体。
  • “delete_orphan” - 表示“删除”加上孤儿删除。
  • "none" - 表示没有级联。

关于java - Hibernate:我什么时候应该使用 Cascade.ALL 什么时候应该单独指定它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58054915/

46 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com