Spring Data' JPARepository
的文档提供了诸如
List<User> findByLastname(String lastname);
for和SpringData将完成生成正确查询的所有工作,并返回正确的用户。
但是假设我想要获得50个用户,并且我有一个他们姓氏的列表。我不想打电话给上述方法50次。我想把JPA等同于
select *
from user
where last_name in ('N0', 'N1', 'N2'... 'N49');
现在看documentation我看到了一些可能性,例如命名查询和规范。命名查询似乎需要在Java注释中指定SQL。与findAll
方法一起使用的规范在示例中具有is
和hasMoreThan
类型方法,但我不会看到任何会转变为in
查询的方法。而规范的Javadocs没有任何示例用法。
如何 如何在JPARepository
中创建一个方法来查询可能性列表?
答案 0 :(得分:4)
答案 1 :(得分:0)
创建要作为查询参数创建的姓氏数组。然后试试这个:findAllInLastName(List lastNames);只要您遵循创建查询方法名称的正确格式,Spring数据就会在您扩展JpaRepository类时自动搜索合适的查询方法。希望这对你有所帮助。并尝试阅读Spring Data在线文档。干杯兄弟!