Spring Boot 中的 PageRequest 未定义

问题描述 投票:0回答:2

我正在尝试在 Springboot 应用程序中实现分页控制器,但出现此错误:

构造函数 PageRequest(int, int) 未定义)(问题#1)

我添加了一个参数来匹配

pagerequest (int, int, sort)
来解决问题,但是排序类受到保护,所以它说构造函数
PageRequest(int, int, Sort)
不可见(问题#2)

问题#1:

@GetMapping("/list")
                             @ResponseBody
                             public Page<Posts> Pagination(@RequestParam(defaultValue="0") int page) {
                            
                             return PostsRepository.findAll(new PageRequest(page,4));
                            
                             }

问题#2:

@GetMapping("/list")
                             @ResponseBody
                             public Page<Posts> Pagination(@RequestParam(defaultValue="0") int page) {
                            
                             return PostsRepository.findAll(new PageRequest(page,4,null));
                            
                             }
java sql angular spring spring-boot
2个回答
0
投票

按照 chrylis 的建议,您可以更改控制器以使用 Pageable 参数。如果不可能,创建可分页对象并使用页面和大小。

@RequestParam(defaultValue = "0") int page,
@RequestParam(defaultValue = "3") int size

Pageable paging = PageRequest.of(page, size);

0
投票
public Page<Posts> Pagination(@RequestParam(defaultValue="0") int page) { 
    Pageable sortedById =  PageRequest.of(page, 3, Sort.by("Id"));
    return PostsRepository.findAll(sortedById);
© www.soinside.com 2019 - 2024. All rights reserved.