springboot jpa 分页查询方式(两种)
本文介绍一下Spring Data JPA分页查询常用的两种方式。
1. PagingAndSortingRepository 接口
创建一个继承自 PagingAndSortingRepository 的Repository接口,并在方法名上使用约定的命名规则来定义查询方法。Spring Data JPA会根据方法名自动生成查询语句,并支持分页和排序。例如:
public interface UserRepository extends PagingAndSortingRepository<User, Long> {
Page<User> find(Pageable pageable);
}
然后在Service层中,使用 Pageable 对象来指定分页信息,然后调用Repository中定义的方法进行查询,代码如下所示:
Pageable pageable = PageRequest.of(pageNumber, pageSize, Sort.by("id").descending());
Page<User> users = userRepository.find(pageable);
2. @Query 注解自定义查询方法
使用 @Query 注解在Repository接口中自定义查询方法。然后可以编写JPQL查询语句或者使用原生SQL查询,这种适合更复杂的查询。
public interface UserRepository extends JpaRepository<User, Long> {
@Query("SELECT u FROM User u")
Page<User> find(Pageable pageable);
}
在Service层中传入 Pageable 对象来实现分页查询,代码如下所示:
Pageable pageable = PageRequest.of(pageNumber, pageSize, Sort.by("id").descending());
Page<User> users = userRepository.find(25, pageable);
总结
以上两种方式都可以实现基于Spring Data JPA的分页查询,可以根据实际需要使用。
希望对看到本文的你有帮助。
上一篇 待定 |
记得点赞收藏哦!!!
|
下一篇 待定 |