JPA 2.1批量更新不适用于hibernate

时间:2014-12-26 06:25:51

标签: hibernate jpa eclipselink

JPA 2.1批量更新与Eclipselink一样正常工作,但hibernate没有,代码如下:

CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaUpdate<Assignment> cu = cb.createCriteriaUpdate(Assignment.class);
Root<Assignment> assignment = cu.from(Assignment.class);
Path<Assignment> parent = assignment.get(Assignment_.parent);
Path<BooleanWrapper> assignmentDeleted = assignment.get(Assignment_.deleted);
Path<BooleanWrapper> parentDeleted = parent.get(Assignment_.deleted);
Predicate assignmentDeletedIsFalse = cb.equal(assignmentDeleted, BooleanWrapper.F);
Predicate parentDeletedIsTrue = cb.equal(parentDeleted, BooleanWrapper.T);
cu.set(assignmentDeleted, BooleanWrapper.T);
cu.where(cb.and(assignmentDeletedIsFalse, parentDeletedIsTrue));
return em.createQuery(cu).executeUpdate();

0 个答案:

没有答案