我正在将JPA 2.2与Hibernate 5.4一起使用来处理基础MySQL 8数据库。
final CriteriaBuilder criteriaBuilder = getEntityManager().getCriteriaBuilder();
final CriteriaQuery<Person> criteriaQuery = criteriaBuilder.createQuery(Person.class);
final Root<Person> root = getCriteriaBuilder.from(Person.class);
criteriaBuilder.equal(root.get("name"), "Doe");
// request resultset here
给定的代码应查询人员名称,该名称恰好是“ Doe”,但也会找到“ DOE”和“ doE”,换句话说,查询不区分大小写。 我也尝试过
criteriaBuilder.like(root.get("name"), "Doe");
但是这也不起作用。 我的假设是,SQL应该使用= -operator,但在WHERE子句中只能找到“ LIKE”。
是否有错误或其他错误?