Commit 23f0fcd3 authored by Pablo Alexander da Rocha Gonçalves's avatar Pablo Alexander da Rocha Gonçalves
Browse files

Recurso de eventos

parent c4a6726b
......@@ -2,7 +2,72 @@
Projeto em Java para obter CEP do webservice ViaCEP
http://viacep.com.br/
![alt tag](http://www.parg.com.br/imagens.parg.com.br/viacep.png)
## Novidade
Agora o projeto conta com uma interface para eventos (ViaCEPEvents), assim você pode melhorar o seu projeto implementando *onCEPSuccess* e *onCEPError*, veja esse exemplo:
```java
import java.util.Scanner;
import viacep.ViaCEP;
import viacep.ViaCEPEvents;
import viacep.ViaCEPException;
/**
* Testa a classe ViaCEP
* @author Pablo Alexander da Rocha Gonçalves
*/
public class ViaCEPTest implements ViaCEPEvents {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
new ViaCEPTest().run();
}
public void run() {
ViaCEP viaCEP = new ViaCEP(this);
String cep;
Scanner scan = new Scanner(System.in);
System.out.println(ViaCEPTest.class.getName() + " - digite sair para fechar o teste!");
do {
System.out.print("Digite um cep: ");
cep = scan.next();
// consulta
if (!cep.equals("sair")) {
try {
viaCEP.buscar(cep);
} catch (ViaCEPException ex) {
System.err.println("Ocorreu um erro na classe " + ex.getClasse() + ": " + ex.getMessage());
}
}
} while (!cep.equals("sair"));
}
@Override
public void onCEPSuccess(ViaCEP cep) {
System.out.println();
System.out.println("CEP " + cep.getCep() + " encontrado!");
System.out.println("Logradouro: " + cep.getLogradouro());
System.out.println("Complemento: " + cep.getComplemento());
System.out.println("Bairro: " + cep.getBairro());
System.out.println("Localidade: " + cep.getLocalidade());
System.out.println("UF: " + cep.getUf());
System.out.println("Gia: " + cep.getGia());
System.out.println("Ibge: " + cep.getIbge());
System.out.println();
}
@Override
public void onCEPError(String cep) {
System.out.println();
System.out.println("Não foi possível encontrar o CEP " + cep + "!");
System.out.println();
}
}
```
## O que é?
Este é um projeto de Java feito no **NetBeans IDE 8.0.2** usando a **JDK 8**, mas que eu acredito que pode ser adaptado para qualquer JDK ou versão do Java.
......@@ -17,7 +82,4 @@ O **ViaCEP** é um serviço gratuito que serve como exemplo para muitos, então
Pode-se até criar um TIMESTAMP para registrar data que o CEP foi criado/atualizado para que a cada um determinado tempo o mesmo seja atualizado novamente através do ViaCEP.
Se todos fizerem o melhor pensando no próximo vamos ter um excelente serviço rápido e estável.
## Alternativa
Existe o projeto https://github.com/gilberto-torrezan/viacep do Gilberto que é excelente e tem suporte a GWT.
\ No newline at end of file
Se todos fizerem o melhor pensando no próximo vamos ter um excelente serviço rápido e estável.
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment