Java 迭代数组以创建hibernate条件语句
假设我的数组有3个整数对象值=3,4,5 我需要创建如下所示的hibernate标准Java 迭代数组以创建hibernate条件语句,java,hibernate,Java,Hibernate,假设我的数组有3个整数对象值=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
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
}
您可以在获取数组
参数时使用限制
Integer[] integerArray = ...
criteria.add(Restrictions.and(Restrictions.not(
Restrictions.in("stepId", integerArray)
);
是的,您可以在循环中使用:
Disjunction disjunction = Restrictions.disjunction();
for(Iterator iterator = integerArray.iterator; iterator.hasNext()){
disjunction.add(yourRestriction); //add your restirction here
}
criteria.add(disjunction );