【发布时间】:2016-10-28 23:09:07
【问题描述】:
我最近开始使用 Spring data jpa。
如果有人能够阐明 Spring Data JPA 的 findFirst 和 findTop 之间的技术差异,那将是非常值得赞赏的.
区别,用法。
谢谢
【问题讨论】:
标签: java spring-data-jpa
我最近开始使用 Spring data jpa。
如果有人能够阐明 Spring Data JPA 的 findFirst 和 findTop 之间的技术差异,那将是非常值得赞赏的.
区别,用法。
谢谢
【问题讨论】:
标签: java spring-data-jpa
来自Spring Data JPA - Reference Documentation,
查询方法的结果可以通过关键字first或top进行限制,可以互换使用。可以将可选数值附加到top/first 以指定要返回的最大结果大小。如果省略数字,则假定结果大小为 1。
User findFirstByOrderByLastnameAsc();
User findTopByOrderByAgeDesc();
Page<User> queryFirst10ByLastname(String lastname, Pageable pageable);
Slice<User> findTop3ByLastname(String lastname, Pageable pageable);
List<User> findFirst10ByLastname(String lastname, Sort sort);
List<User> findTop10ByLastname(String lastname, Pageable pageable);
限制表达式还支持Distinct 关键字。此外,对于将结果集限制为一个实例的查询,支持将结果包装到 Optional 中。
【讨论】:
first 和top 可以互换使用,为什么我们需要两者?@SkyWalker
first或top关键字限制查询方法的结果,可以互换使用。