JPA在删除实体后仍然会找到实体

时间:2012-02-02 00:58:40

标签: jpa entitymanager

我从A到B有一个OneToMany关系(A引用列表Bs)。

当我使用entityManager.remove(b)a.getBs().remove(b)或两者删除B时,再次加载A:已删除的B仍会出现在列表中,但它已从数据库中有效删除!我试图在没有成功的情况下使用Cascade.ALL而不是{{1}}。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您需要同时执行这两项操作(除非您使用删除孤儿)。如果你这两个都应该消失。确保从正确的托管a中删除它,而不是分离的a。确保a实际上包含b开头。

您总是可以调用refresh()来确认数据库状态是否正确。