【发布时间】:2020-10-01 10:24:57
【问题描述】:
我正在尝试编写一个 Micronaut Data JPA finder 来查找与字符串列表匹配的所有 employees。
给定以下员工(名字,姓氏)
- 约翰·多伊
- 简·多伊
- 彼得潘
- 西尔维奥·旺勒
- 弗兰卡·波坦特
- 弗兰克·波特
假设用户使用 Silvio 之类的查询查询系统,那么结果应该是
- 员工:Silvio Wangler
如果查询是Frank,结果应该是
- 员工:弗兰卡·波坦特
- 员工:弗兰克·波特
如果查询是frank pot,结果也应该是(不区分大小写)
- 员工:弗兰卡·波坦特
- 员工:弗兰克·波特
我设法为单个字符串编写了一个查找器,如下所示
Page<Employee> findAllByLastNameIlikeOrFirstNameIlike(
String lastName, String firstName, Pageable pageable);
对于像 frank pot 这样的查询,我想将字符串标记/拆分为列表 ["frank", "pot"] 并且想知道我是否可以实现类似
Page<Employee> findAllByLastNameIlikeOrFirstNameIlike(
List<String> lastName, List<String> firstName, Pageable pageable);
甚至更好地使用 JPA 的 Criteria API。您将如何实现这样的搜索器?你能给我指个方向吗?
【问题讨论】:
标签: jpa micronaut micronaut-data