当前位置: 首页 > 知识库问答 >
问题:

主义:cascade=“remove”vs孤儿removal=true

琴镜
2023-03-14

上面的两个选项有什么区别?什么时候选择每一个选项更可取?

共有1个答案

卜阳
2023-03-14

两者的基本区别是:

当使用OphanRemoval=True时,选项原则假设实体是私有的,不会被其他实体重用。如果你忽略了这个假设,你的实体就会被理论删除,即使你把孤立的实体分配给另一个实体。

假设您的用户注释具有一对多关系。如果您使用的是cascade=“remove”,则可以从一个用户中删除对注释的引用,然后将该注释附加到另一个用户。当您坚持它们时,它们将被正确保存。但是,如果您使用的是OphanRemoval=True,即使您将从一个用户中删除给定的注释,然后附加到另一个用户,该注释也将在持久期间删除,因为引用已被删除。

 类似资料:
  • 我试图收集一些关于以下方法的信息,以便在删除父实体时自动删除子实体。似乎最常见的方法是使用这三个注释中的一个:或或。 我对第三个有点困惑:,因为在教义官方文件中关于这个问题的解释非常少),我希望有人能证实我从网上的研究和经验中收集和了解的以下信息... 它是做什么的? ==>当拥有方实体为。即使您与其他拥有方实体处于中。 应在集合上使用(因此在或关系中使用) ORM中的实现 ==>当拥有方实体是且

  • 我试图收集以下信息,以便在删除父实体时自动删除子实体。似乎最常见的方法是使用这三种注释中的一种:或或。 我对第三个有点困惑:,因为教义官方留档中关于这个的解释非常少),我希望有人能证实我从我的研究中收集和理解的以下信息网络和经验... 它有什么作用? == 应用于收集(因此在或关系中) == ORM中的实施 可与、或 == 这个策略有点棘手,但可能非常强大和快速。(参考官方文件,但尚未阅读更多解释

  • 孤儿进程概念 我们经常听别人说到孤儿进程(Orphan Process),究竟是什么呢,现在我们一次理解透。 根据维基百科的解释,孤儿进程指的是在其父进程执行完成或被终止后仍继续运行的一类进程。 孤儿进程与僵尸进程是完全不同的,后面会详细介绍僵尸进程。而孤儿进程借用了现实中孤儿的概念,也就是父进程不在了,子进程还在运行,这时我们就把子进程的PPID设为1。前面讲PID提到,操作系统会创建进程号为1

  • 有人知道我为什么会有这种行为吗?是我的代码出了bug还是什么问题?

  • 问题内容: 我在使用具有以下映射的JPA删除孤立节点时遇到问题 我遇到了孤立角色挂在数据库周围的问题。 我可以使用特定于注释的Hibernate标记,但是显然我不想将解决方案绑定到Hibernate实现中。 编辑 :似乎JPA 2.0将包括对此的支持。 问题答案: 如果将它与Hibernate一起使用,则必须显式定义批注,该批注可与JPA结合使用。 如果您不打算使用Hibernate,则必须先明确

  • 最近,我问了一个关于堆栈溢出的非常类似的问题,这是另一个问题的重复。在另一个问题中,我采用了一种变通方法,解决了我的问题。现在,这一次解决方案不起作用,所有其他提到的解决方案都不起作用。此外,链接到第一个线程的其他线程的所有解决方案都不起作用。 这是我最初的问题: SQLServerException:无效的列名 这就是重复: Hibernate列名问题 我已经检查了链接和相关部分右侧的主题,但找