我正在使用CriteraBuilder
构建JPA搜索查询,并且必须说明不同的语言环境。该查询还必须不区分大小写。
在Java方面,考虑语言环境相对简单:
"%" + queryString.toUpperCase(Locale.ROOT) + "%"
但是,据我所知,CriteriaBuilder.upper()
函数并不支持Locale。有没有其他方法可以确保处理语言环境?
答案 0 :(得分:0)
您可以将其转换为这样的字符串
query.where(builder.like(builder.upper(root.get(TestEntity_.locale).as(String.class)), "%DE%"));
重要的是
root.get(TestEntity_.locale).as(String.class)