使用 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);
更好,因为你得到了惰性实例。
对不起我的英语)
我正在尝试删除实体,但出现此异常:
java.lang.IllegalArgumentException: Removing a detached instance
我知道我的问题是我使用了两个不同的 EntityManger 实例。我寻找解决方案,但我找到的所有解决方案都是这样的:
entityManger.remove(entityManger.merge(entity));
有另一种方法可以解决此问题,而不是使用合并和删除功能吗?
异常表示您的实体不受持久上下文管理。您不能删除未管理的实体。您可以使用
Entity entity = entityManager.getReference(Entity.class, id);
entityManager.remove(entity);
更好,因为你得到了惰性实例。 对不起我的英语)