假设我的数组有 3 个整数对象 value= 3,4,5
我将需要创建如下所示的 hibernate 条件

criteria.add(Restrictions.and(Restrictions.not(Restrictions.eq(
        "stepId", new Integer(3))), Restrictions.and(Restrictions
        .not(Restrictions.eq("stepId", new Integer(4))), Restrictions
        .not(Restrictions.eq("stepId", new Integer(5))))));

上述标准是手动创建的,我想知道可以通过迭代自动化
for(Iterator iterator = integerArray.iterator; iterator.hasNext()){
    // create the criteria above
}

最佳答案

是的,您可以在循环中使用 Disjunction:

Disjunction disjunction = Restrictions.disjunction();
for(Iterator iterator = integerArray.iterator; iterator.hasNext()){
    disjunction.add(yourRestriction); //add your restirction here
}
criteria.add(disjunction );

关于java - 迭代数组以创建 hibernate 条件语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2046169/

10-10 12:31