[英]Pageable + @Query + JOIN (fetch?) in Spring Data don't work
[英]Spring Boot: @GetMapping with Pageable as request parameter don't work as expected
我正在使用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
)時始終會重置為默認值,但是我在請求的URL中發送了不同的參數( ?offset=15&pageSize=5
例如)。
Spring Boot將請求參數映射到擴展AbstractPageRequest
org.springframework.data.domain.PageRequest
AbstractPageRequest implements Pageable, Serializable {
...
private final int page;
private final int size;
public long getOffset() {
return (long)this.page * (long)this.size;
}
...
您應該使用以下網址:
http://localhost:8080?page=3&size=5
您也可以按...&sort = name添加排序
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.