我正在使用 JPA 的(实体管理器)标准查询从数据库中获取结果。我需要在标准之间放置“OR”子句。
我的代码如下:
List<Predicate> criteraList = new ArrayList<Predicate>();
if(user.getEid() != null){
criteraList.add(criteriaUserCountry.like((Expression) userList.get("userCountryPK").get("user").get("eid"), "%" + user.getEid() + "%" ));
}
if(user.getFirstName() != null) {
criteraList.add(criteriaUserCountry.like((Expression) userList.get("userCountryPK").get("user").get("firstName"), "%" + user.getFirstName() + "%" ));
}
cq.where(criteraList.toArray(new Predicate[]{}));
TypedQuery<UserCountry> query = entityManager.createQuery(cq);
在sql查询方面,上面的代码在不同的条件之间插入了'AND'。如何使用 Entity Manager 的标准来实现“OR”子句。