【发布时间】:2016-10-04 03:41:50
【问题描述】:
我正在尝试测试此方法以从 h2 数据库中删除实体:
public boolean delete(T entity) {
if (entity == null) {
throw new IllegalArgumentException();
}
boolean ret = true;
EntityManager em = entityManager();
try {
EntityTransaction tx = em.getTransaction();
tx.begin();
em.remove(em.merge(entity));
tx.commit();
} catch (RollbackException ex) {
ret = false;
} finally {
em.close();
}
return ret;
}
如果实体在数据库中并将其删除,则该方法返回 true,但如果给定的实体不在数据库中,它也会返回 true。有人可以解释我为什么吗?谢谢。
【问题讨论】:
-
删除不存在的实体会导致异常吗?
-
这就是我想要做的,但不知道它是否真的有效
标签: java database jpa h2 entitymanager