Technical differences between Spring Data JPA's findFirst and findTop

后端 未结 1 1303
暖寄归人
暖寄归人 2021-02-03 18:06

I recently started working with Spring data jpa.

It would be highly appreciable if somebody could throw some light on the technical differences

相关标签:
1条回答
  • 2021-02-03 18:29

    From Spring Data JPA - Reference Documentation,

    Limiting query results

    The results of query methods can be limited via the keywords first or top, which can be used interchangeably. An optional numeric value can be appended to top/first to specify the maximum result size to be returned. If the number is left out, a result size of 1 is assumed.

    Limiting the result size of a query with Top and First

    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);
    

    The limiting expressions also support the Distinct keyword. Also, for the queries limiting the result set to one instance, wrapping the result into an Optional is supported.

    0 讨论(0)
提交回复
热议问题