String Boot 分页查询 mongoDb的数据
时间: 2023-07-24 17:05:54 浏览: 84
使用 Spring Boot 进行 MongoDB 的分页查询,可以使用 Spring Data MongoDB 提供的 `Pageable` 接口。
首先,需要在 `pom.xml` 文件中添加 Spring Data MongoDB 的依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
```
然后,在 MongoDB 的 Repository 中定义分页查询方法,例如:
```java
@Repository
public interface UserRepository extends MongoRepository<User, String> {
Page<User> findAll(Pageable pageable);
}
```
在上述代码中,`User` 是实体类,`String` 是主键类型。
在 Service 层中,可以使用 `PageRequest` 类来创建分页请求对象,例如:
```java
@Service
public class UserService {
@Autowired
private UserRepository userRepository;
public Page<User> findAllUsers(int page, int size) {
PageRequest pageRequest = PageRequest.of(page, size);
return userRepository.findAll(pageRequest);
}
}
```
在上述代码中,`page` 和 `size` 分别表示查询的页码和每页数据量。
最后,在 Controller 层中,可以将分页查询结果封装成 JSON 返回给前端,例如:
```java
@RestController
@RequestMapping("/users")
public class UserController {
@Autowired
private UserService userService;
@GetMapping
public ResponseEntity<Page<User>> findAllUsers(@RequestParam(defaultValue = "0") int page,
@RequestParam(defaultValue = "10") int size) {
Page<User> users = userService.findAllUsers(page, size);
return ResponseEntity.ok(users);
}
}
```
在上述代码中,`@RequestParam` 注解用于从 URL 中获取分页参数。`ResponseEntity` 类用于封装返回的 JSON 数据和 HTTP 状态码。
阅读全文
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![-](https://img-home.csdnimg.cn/images/20241226111658.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)