Tenho o seguinte json:
{
“name”: “João”,
“name”: “Maria”,
“name”: “José”
}
Como faço para recuperar esses valores em uma requisição GET?
eu fiz assim:
ResponseEntity<List<Users>> responseEntityUsers = restTemplate.exchange(url, HttpMethod.GET, requestEntity, Users.class);
Mas está dando erro.
A classe Users está assim:
public class Users {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Users[] users = restTemplate.exchange(url, HttpMethod.GET, requestEntity, Users[].class);
List<Users> usersList = Arrays.asList(users);
Funcionou assim:
ResponseEntity<Users[]> users = restTemplate.exchange(url, HttpMethod.GET, requestEntity, Users[].class);
List<ResponseEntity<Users[]>> usersList = Arrays.asList(users);
Muito obrigado @Jonathan_Medeiros, sempre me salvando.
Valeu mesmo.
Mas agora não estou sabendo como manipular essa variável usersList.
Percebi que ela é um responseEntity e que dentro dela tem um vetor de Users.
Como faço para converter esse responseEntity para apenas uma lista de usuários?
Na verdade essa variável usersList é uma lista de ResponseEntity, mas só com apenas um objeto do tipo ResponseEntity e dentro desse objeto tem um vetor de Users.
Como faço para converter tudo apenas para uma lista de Users?
Usar dessa forma não eh o correto. Uma requisição http retorna um response, e nesse response há os dados retornados, sejam eles um texto, número, lista, etc.
O certo seria como dito pelo @Jonathan_Medeiros, retornando os dados diretamente para uma variável, ou recuperar o response diretamente: ResponseEntity<Users[]>.
Assim deu certo:
ResponseEntity<User[]> users = restTemplate.exchange(url, HttpMethod.GET, requestEntity, User[].class);
List<User> userList = Arrays.asList(users.getBody());
Muito obrigado pessoal.
1 curtida