【发布时间】:2015-08-23 11:14:37
【问题描述】:
例如Customer 有一个PhoneNumber 类型的字段(值对象)。
在persistence.xml 中注册了一个PhoneNumberConverter,它实现了javax.persistence.AttributeConverter。此转换器将PhoneNumber 转换为字符串,反之亦然,因此JPA 提供程序能够将PhoneNumbers 存储到数据库中。
如何使用 Criteria API 在 PhoneNumber 上使用 LIKE 运算符查询 Customer? PhoneNumber 只能是有效的电话号码。 PhoneNumber 的值类似于 '+31%' 是不可能的。
【问题讨论】:
-
你试过在 NamedQuery 中使用吗?
-
@Safwan Hijazi 在 Criteria API 中使用
Predicates可以方便地实现用于搜索“客户”的大型表单。当字段为空时,查询Customers时不应考虑。
标签: java jpa criteria-api