我正在尝试删除实体,但出现此异常:
java.lang.IllegalArgumentException:删除分离的实例
我知道我的问题是我正在使用两个不同的 EntityManger 实例。我寻找解决方案,但我找到的所有解决方案都是这样的:
entityManger.remove(entityManger.merge(entity));
除了使用合并和删除功能之外,还有另一种方法可以解决这个问题吗?
最佳答案
异常表示您的实体不受持久上下文管理。您无法删除非托管实体。您可以使用
Entity entity = entityManager.getReference(Entity.class, id);
entityManager.remove(entity);
这更好,因为你得到了惰性实例。 抱歉我的英语)
关于java - 使用 EntityManager 的两个实例时删除实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42667483/