4

我想用 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)));

如何添加第三个?

4

2 回答 2

17

您可以“或”对结果进行更多限制:

Criteria criteria = session.createCriteria(Reader.class);
criteria.add(Restrictions.or(Restrictions.or(condition1, condition2), condition3));

或使用析取:

Criteria criteria = session.createCriteria(Reader.class);
Junction conditionGroup = Restrictions.disjunction();
conditionGroup.add(condition1).add(condition2).add(condition3);
criteria.add(conditionGroup);
于 2011-05-02T16:44:10.780 回答
0

您可以参考此链接以获得更详细的合取和析取解释

如何将 Hibernate Criteria 对象用于多个和/或条件

于 2016-08-15T17:15:43.567 回答