如何将大写查询与JPA和QueryBuilder进行比较
如何将大写字母与JPA QueryBuilder进行比较 SQL: 还有I add:searchName.toUpperCase()这里有一个解决方案:如何将大写查询与JPA和QueryBuilder进行比较,jpa,uppercase,Jpa,Uppercase,如何将大写字母与JPA QueryBuilder进行比较 SQL: 还有I add:searchName.toUpperCase()这里有一个解决方案: 公共列表getPersonsByUpperName(字符串搜索名称){ CriteriaBuilder cb=em.getCriteriaBuilder(); CriteriaQuery cq=cb.createQuery(Person.class); Root person=cq.from(person.class); Path name=p
公共列表getPersonsByUpperName(字符串搜索名称){
CriteriaBuilder cb=em.getCriteriaBuilder();
CriteriaQuery cq=cb.createQuery(Person.class);
Root person=cq.from(person.class);
Path name=person.get(“name”);//表列
cq.选择(人);
其中(cb.equal(cb.upper(name),cb.parameter(String.class,“nameport”));
TypedQuery q=em.createQuery(cq);
q、 setParameter(“nameUpper”,searchName.toUpperCase());;
返回q.getResultList();
}
这适用于任何输入字符串(Dimitri、Dimitri等),因为在方法内部执行大写转换:
- 表列:
cb.upper(名称)
- 查询参数:
searchName.toUpperCase()
SELECT * FROM PERSON WHERE UPPER(name) = ?