spring boot 查询分页
时间: 2024-09-20 14:17:25 浏览: 62
Spring Boot 中查询分页通常通过 Spring Data JPA 或者 Hibernate 进行,它们提供了简单易用的方式来处理数据库的分页操作。以下是使用 Spring Data JPA 的一种常见做法:
1. 首先,在Repository接口上添加 `Pageable` 参数,它是 Spring Data 提供的用于表示分页信息的对象。例如:
```java
public interface UserRepository extends JpaRepository<User, Long> {
Page<User> findAll(Pageable pageable);
}
```
这里的 `findAll()` 方法会返回一个 `Page<User>` 对象,它包含了当前页的数据以及总页数等信息。
2. 调用时,你可以传递一个 `PageRequest` 对象,该对象包含起始位置、大小(每页数量)、排序规则等信息:
```java
PageRequest pageRequest = PageRequest.of(pageNumber, pageSize, Sort.by(Sort.Direction.DESC, "id"));
Page<User> users = userRepository.findAll(pageRequest);
```
`pageNumber` 是页码,`pageSize` 是每页显示的数量。
3. 分页数据可以在 `users` 对象中获取,比如获取当前页的数据、总页数、是否有下一页等:
```java
List<User> content = users.getContent(); // 当前页的数据
int totalPages = users.getTotalPages(); // 总页数
boolean hasNextPage = users.hasNext(); // 是否有下一页
```
阅读全文