首页 > 解决方案 > 分页的内容返回空

问题描述

使用 PagingAndSortingRepository 内容返回 {} 和来自页面 url 参数的正确数量的内容。示例:我的表有 20 行,在 url 中放置 ?page=0&size=10。当在邮递员中返回时,关键内容返回

    "content": [
        {},
        {},
        {},
        {},
        {},
        {},
        {},
        {},
        {},
        {}
    ]

调试请求并返回它有值。但是没有显示。不知道为什么。

我的存储库

public interface LocalUtilRepository extends PagingAndSortingRepository<LocalUtilModel, Integer> {
    Page<LocalUtilModel> findAll(Pageable pageable);
}

春季启动版

<artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.6.RELEASE</version> 

请求的结果

{
    "content": [
        {},
        {},
        {},
        {},
        {},
        {},
        {},
        {},
        {},
        {}
    ],
    "pageable": {
        "sort": {
            "sorted": false,
            "unsorted": true,
            "empty": true
        },
        "offset": 0,
        "pageNumber": 0,
        "pageSize": 10,
        "unpaged": false,
        "paged": true
    },
    "totalPages": 2,
    "totalElements": 11,
    "last": false,
    "size": 10,
    "number": 0,
    "sort": {
        "sorted": false,
        "unsorted": true,
        "empty": true
    },
    "numberOfElements": 10,
    "first": true,
    "empty": false
}

我的模型

   @Entity(name = "EXPLOCALUTIL")
public class LocalUtilModel {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;

    @NotNull
    @Size(min = 5, max = 255)
    @Column(name = "DESCLOCALUTIL")
    private String descLocalUtil;

    @Column(name = "COORD")
    private String coordenada;

    private String referencia;

    @NotNull
    @Column(name = "IDEXPFEIRA")
    private Integer idExpFeira;
} 

标签: javarestspring-boot

解决方案


根据您的 JSON 响应,它显示为"offset":0.

尝试在您的存储库可分页参数中传递它。

PageRequest.of(0, 10)这里 0 是页码,10 是偏移量。

公式定义:

int start = pageNumber * offset + 1;

int end = start+offset.

所以在我们的场景中,开始为 1,结束为 10。这将获取前 10 个返回值。

ResponseEntity.ok().body( localUtilRepository.findAll(PageRequest.of(0, 10))

只需在第一个参数中传递您的页面,在第二个参数中传递大小。


推荐阅读