使用 EntityManager 的两个实例时删除实体

Delete entity while using two instances of EntityManger

我正在尝试删除实体,但出现此异常:

java.lang.IllegalArgumentException: Removing a detached instance

我知道我的问题是我使用了两个不同的 EntityManger 实例。我寻找解决方案,但我找到的所有解决方案都是这样的:

entityManger.remove(entityManger.merge(entity));

有另一种方法可以解决此问题,而不是使用合并和删除功能吗?

异常表示您的实体不受持久上下文管理。您不能删除未管理的实体。您可以使用

Entity entity = entityManager.getReference(Entity.class, id);
entityManager.remove(entity);

更好,因为你得到了惰性实例。 对不起我的英语)