1
resposta

???

Agora fico parado por não ter condições de prosseguir, pois faltou uma informação que nada custava ter feito novamente, quantas vezes fossem necessárias. Quanto tempo levará para que eu possa prosseguir no curso. Pena...

1 resposta

Olá, Ede.

Tudo bem?

Como você não especificou o problema, eu vou tentar te ajudar a recapitular os passos e esclarecer qualquer ponto dessa aula a qual você abriu esse tópico na etapa "Obtendo um endereço da API ViaCEP".

Passos para consumir a API ViaCEP:

  1. Criação do Projeto e Classes:

    • Crie um novo projeto chamado buscador.
    • Dentro do projeto, crie uma classe Principal com o método main.
  2. Definição do Record para Endereço:

    • Crie um record Endereco para armazenar os dados do endereço:
      public record Endereco(String cep, String logradouro,
                             String complemento, String bairro,
                             String localidade, String uf) {
      }
      
  3. Criação da Classe ConsultaCep:

    • Crie uma classe ConsultaCep com um método buscaEndereco:
      public class ConsultaCep {
          public Endereco buscaEndereco(String cep) {
              URI endereco = URI.create("https://viacep.com.br/ws/" + cep + "/json");
              
              HttpClient client = HttpClient.newHttpClient();
              HttpRequest request = HttpRequest.newBuilder()
                  .uri(endereco)
                  .build();
              
              HttpResponse<String> response = null;
              try {
                  response = client.send(request, HttpResponse.BodyHandlers.ofString());
              } catch (IOException | InterruptedException e) {
                  throw new RuntimeException("Não consegui obter o endereço a partir desse CEP.");
              }
              
              return new Gson().fromJson(response.body(), Endereco.class);
          }
      }
      
  4. Testando a Consulta na Classe Principal:

    • Na classe Principal, instancie ConsultaCep e faça uma busca de CEP:
      public class Principal {
          public static void main(String[] args) {
              ConsultaCep consultaCep = new ConsultaCep();
              Endereco novoEndereco = consultaCep.buscaEndereco("01001000");
              System.out.println(novoEndereco);
          }
      }
      

Pontos Importantes:

  • Biblioteca GSON: Certifique-se de que a biblioteca GSON está incluída no seu projeto para a conversão JSON.
  • Tratamento de Exceções: O método send pode lançar exceções que precisam ser tratadas com try/catch.

Próximos Passos:

  • Menu para o Usuário: Implemente um menu para que o usuário possa informar o CEP para busca.
  • Geração de Arquivo JSON: Adicione a funcionalidade para gerar um arquivo JSON com os dados do endereço obtido.

Espero ter ajudado. Qualquer dúvida manda aqui. Bons estudos.