首页 > 解决方案 > 查询参数值不绑定到 Spring Pageable

问题描述

我的 Spring Boot 应用程序控制器包含一个带有可选 Pageable 参数的方法,如下所示。

@RequestMapping(method = RequestMethod.GET)
@Override
public Page<MarkupView> getAllMarkup(Pageable pageable) {
    System.out.println("Page size" + pageable.getPageSize() ) // prints 20
    return markupService.getAllMarkups(pageable);
}

我的问题是当我使用 swagger-ui 传递查询参数时,这些值不会绑定到可分页对象。为什么我说是否将值 5 作为查询参数传递,它会将 pageSize 打印为 20。

请求网址: http://localhost:8080/api/markups?offset=2&pageNumber=1&pageSize=5

上面的 Get 请求返回包含所有MarkupView记录的 Page 对象。

标签: javaspring-bootspring-data-jpaswagger-uiquery-parameters

解决方案


参考Spring Data Web Support的第 5 节。请检查您是否遵循上述配置。pageNumber然后从topagepageSizeto更新查询参数名称size


推荐阅读