首页 > 解决方案 > CascadeAll时为什么要添加orphanRemoval = true

问题描述

我更新了我的实体,该实体具有以 Set 表示的 oneToMany 关系。

所以我使用 cascade = CascadeType.ALL 。因此,当我向集合中添加一些内容并更新我的实体时,一切都很好。

但是当我从 SET 中删除一个孩子然后更新它时,它并没有从 cild 表中删除。它仍然在数据库中。

所以我使用了 orphanRemoval = true ,是的,它也被从子表中删除了。为什么当已经使用应该包括 CascadeType.Remove 的 cascade = CascadeType.ALL 我仍然不得不说 orphanRemoval = true ?

标签: jpa

解决方案


推荐阅读