JPA类似查询,占地区

时间:2019-01-11 11:39:11

标签: jpa locale criteria-api

我正在使用CriteraBuilder构建JPA搜索查询,并且必须说明不同的语言环境。该查询还必须不区分大小写。

在Java方面,考虑语言环境相对简单:

"%" + queryString.toUpperCase(Locale.ROOT) + "%"

但是,据我所知,CriteriaBuilder.upper()函数并不支持Locale。有没有其他方法可以确保处理语言环境?

1 个答案:

答案 0 :(得分:0)

您可以将其转换为这样的字符串

query.where(builder.like(builder.upper(root.get(TestEntity_.locale).as(String.class)), "%DE%"));

重要的是

root.get(TestEntity_.locale).as(String.class)
相关问题