如何正确地使用3 OR Criter进行条件查询?

Kév*_*ard 4 hibernate criteria hibernate-criteria

我想用3 OR Criterions进行标准查询,我不知道最好的方法是什么.

目前我只有2个或限制.

Criteria crit = session.createCriteria(Reader.class)
.add(Restrictions.or(Restrictions.like(PUBLICATION_ID_FIELD, "Question",MatchMode.END), Restrictions.like(PUBLICATION_ID_FIELD, "Idea",MatchMode.END)));
Run Code Online (Sandbox Code Playgroud)

我该如何添加第三个?

Chs*_*y76 17

您可以对结果"或"另外一个限制:

Criteria criteria = session.createCriteria(Reader.class);
criteria.add(Restrictions.or(Restrictions.or(condition1, condition2), condition3));
Run Code Online (Sandbox Code Playgroud)

或使用Disjunction:

Criteria criteria = session.createCriteria(Reader.class);
Junction conditionGroup = Restrictions.disjunction();
conditionGroup.add(condition1).add(condition2).add(condition3);
criteria.add(conditionGroup);
Run Code Online (Sandbox Code Playgroud)