setOneIndexedParameters

setOneIndexedParameters

我正在使用Spring Boot作为我的API。我的API中有一个分页概念,因此我为此使用了spring-data-core 2.5.5 RELEASE。现在作为响应,当我访问API的第一页时,响应中的可分页对象如下

"page": { "size": 200, "totalElements": 15, "totalPages": 1, "number": 1 // always less than by 1 from the given page number }

我已经尝试设置属性setOneIndexedParameters(true)
但问题仍然存在。

请告诉我一种正确的方法而又不增加代码数量。

最佳答案

您如何设置属性setOneIndexedParameters?要定制分页,您只需要注册一个实现接口PageableHandlerMethodArgumentResolverCustomizer的bean。

例如

@Configuration
public class CustomConfig {

    @Bean
    public PageableHandlerMethodArgumentResolverCustomizer customize() {
        return p -> p.setOneIndexedParameters(true);
    }
}


要么

@Component
public class CustomConfig implements
                    PageableHandlerMethodArgumentResolverCustomizer {

    @Override
    public void customize(PageableHandlerMethodArgumentResolver pr) {
        pr.setOneIndexedParameters(true);
    }
}


参考:HandlerMethodArgumentResolvers for Pageable and Sort

08-25 21:20