我正在使用 Spring Boot 2 ,并且我在@RestController
内写了一个@GetMapping
作为参数的Pageable
。
@GetMapping
public ResponseEntity<Page<AppointmentTO>> findAll(Pageable pageable) {
Page<AppointmentTO> page = appointmentService.findAll(pageable);
return ResponseEntity.ok(page);
}
问题如下:
对于每个请求,查询参数 pageSize
和offset
在到达Spring Boot Backend(?offset=0&pageSize=20
)时始终会重置为默认值。我在请求的网址中发送了不同的参数(例如?offset=15&pageSize=5
)。
答案 0 :(得分:2)
Spring Boot将请求参数映射到扩展org.springframework.data.domain.PageRequest
的{{1}}
AbstractPageRequest
您应使用以下网址:
AbstractPageRequest implements Pageable, Serializable {
...
private final int page;
private final int size;
public long getOffset() {
return (long)this.page * (long)this.size;
}
...
您还可以按...&sort = name
添加排序