我正在嘗試每天向客戶發送大量員工資料,但不知道有多少數量。從而想到分批發送資料。在基于 Spring 的專案中做到這一點的最佳方法是什么。
@GetMapping(value = "/employees")
public List<Employee> findAllEmployees(){
return employeeService.getAllEmployees();
}
我被告知要遵循偏移限制格式,但不確定如何設定偏移。我應該在這里添加額外的引數作為偏移量并從客戶端回圈呼叫這個 api 嗎?或者如果有更好的方法來做到這一點,請幫助
uj5u.com熱心網友回復:
HTTP 請求只有一個回應。如果要將結果分成批次,則可以使前端發送偏移量和大小并獲得批次的結果。參考分頁的概念。最佳實踐應該是使用:
Pageable pageable = PageRequest.of(0, 20);
從前端傳遞這個引數并重復呼叫
uj5u.com熱心網友回復:
如果您回傳型別,這是可能ResponseEntity的Resource:
@GetMapping(value = "/employees")
public ResponseEntity<Resource> findAllEmployees() throws JsonProcessingException {
ObjectMapper mapper = new ObjectMapper();
byte[] array = mapper.writeValueAsBytes(employeeService.getAllEmployees());
Resource resource = new ByteArrayResource(array);
return ResponseEntity.status(HttpStatus.OK).body(resource);
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/386335.html
上一篇:可以將JavaRecords與@Service/@RestController注釋一起使用嗎
下一篇:springsecurityhasAuthority("SCOPE_xxx")方法不適用于spring授權服務器版本0.2.0
