1
resposta

[Dúvida] Por que o uso do método FromJson?

Para esta classe:

public class ConsultaCep {

    public Endereco buscaEndereco(String cep) {
            URI endereco = "https://viacep.com.br/ws/" + cep + "/json";

            HttpClient client = HttpClient.newHttpClient();
            HttpRequest request = HttpRequest.newBuilder()
                .uri(endereco)
                .build();

            HttpResponse<String> response = HttpClient
                .newHttpClient()
                .send(request, HttpResponse.BodyHandlers.ofString());

   return new Gson().fromJson(response.body(), Endereco.class);
        }
}

A API do viacep está retornando os dados em formato JSON, então para que o uso do "Gson().fromJson(response.body(), Endereco.class);"? no return?

1 resposta

É bem simples, podemos dizer que o java não consegue ler o formato "JSON" diretamente, então é necessário realizar a conversão do JSON em um objeto java para ele se tornar legível e manipulável dentro do seu código.

No método "fromJson", o primeiro parâmetro é a string que contém o JSON e o segundo parâmetro é a classe Java na qual o JSON será convertido. Espero que tenha ficado claro.