1
resposta

Paginação

Não sei se entendi direito, mas não é o back-end que delimitaria quantos registros devem ser enviados para o front-end?

no caso o que estou percebendo é que quem estara consumindo a API que lidará com isso, no caso usando a rota:

http://localhost:8080/medicos?size=1&page=2 Nesta rota, pro exemplo, o cliente parece ter autonomia para decidir quantos registros ele quer retornar isso está correto?

1 resposta

Estudante, boa tarde.

Normalmente esses parametros são caso o cliente queira buscar uma quantidade de itens e qual pagina que ele quer. Mas tenha em vista que normalmente na construção do seu Controller no seu @GetMapping na função você define qual e o default, então você pode sempre deixar por default e o cliente nunca escolher qual tamanho da pagina e sim apenas avançar de uma pagina para a outra.

Codigo de exemplo abaixo onde Lista Clientes:

public ResponseEntity<PagedModel<EntityModel<ClienteVO>>> findAll(
            @RequestParam(value = "page", defaultValue = "0") Integer page,
            @RequestParam(value = "size", defaultValue = "12") Integer size,
            @RequestParam(value = "direction", defaultValue = "asc") String direction
            ){
        
        var sortDirection = "desc".equalsIgnoreCase(direction) ? Direction.DESC : Direction.ASC;
        
        Pageable pageable = PageRequest.of(page, size, Sort.by(sortDirection, "nome"));
        return ResponseEntity.ok(service.findAll(pageable));
    }