我在考试类中有一个唯一 = true 的列.. 我发现因为事务是自动提交的,所以为了强制提交我使用 em.commit()
但是我想知道如何检查它是否是唯一的。运行查询不是解决方案,因为由于并发性,它可能是检查后的插入...
检查唯一性的最佳方法是什么?
List<Exam_Normal> exam_normals = exam.getExam_Normal();
exam.setExam_Normal(null);
try {
em.persist(exam);
em.flush();
Long i = 0L;
if (exam_normals != null) {
for (Exam_Normal e_n : exam_normals) {
i++;
e_n.setItem(i);
e_n.setId(exam);
em.persist(e_n);
}
}
} catch (Exception e) {
System.out.print("sfalma--");
}
}
d