Biblioteca BrasilAPI-Java
Biblioteca criada para facilitar o acesso à API BrasilAPI na linguagem de programação Java
Eu estava planejando desenvolver um novo projeto e para isso precisava de uma API que me retornasse informações da rua a partir do CEP, logo lembrei de um vídeo no YouTube do Filipe Deschamps que falava sobre um sistema que fazia exatamente o que eu precisava, ao buscar por esse sistema, cujo nome é BrasilAPI, me deparei com a quantidade de pessoas que contribuem para melhoria dele e percebi que existia bibliotecas de diversas linguagens de programação com o intuito de facilitar a integração. Então para meu espanto e felicidade, não existia uma biblioteca em Java para integração com o projeto, dessa forma tive a oportunidade de contribuir para o projeto desenvolvendo a biblioteca BrasilAPI-Java.
Disponível no repositório: https://github.com/SavioAndres/BrasilAPI-Java, também acessível a partir do repositório oficial do BrasilAPI.
O que é BrasilAPI
Site oficial: https://brasilapi.com.br
Repositório: https://github.com/BrasilAPI/BrasilAPI
Atualmente dispõe dos seguintes endpoints:
- Banks (Informações sobre Bancos)
- CEP (Informações sobre CEP)
- CEP V2 (Endpoint melhorado com consulta em múltiplos provedores e fallback)
- CNPJ (Informações sobre o Cadastro Nacional da Pessoa Jurídica)
- DDD (Retorna o Estado e as Cidades que contém o DDD)
- Feriados Nacionais (Retorna a data e nome do feriado de determinado ano)
- FIPE (Informações sobre preço médio de veículos)
- IBGE (Informações sobre Estados e Municípios)
- ISBN (Informações sobre livros publicados no Brasil, sistema internacional de identificação de livros)
- NCM (Nomenclatura Comum do Mercosul)
- Registro BR (Avalia um domínio no registro.br)
- Taxas (Taxas de juros e índices oficiais)
O vídeo a seguir de Filipe Deschamps relata como o BrasilAPI foi concebido:
O que faz a BrasilAPI-Java
A biblioteca tem o objetivo de simplificar ainda mais a conexão entre o endpoint cedido pelo sistema do BrasilAPI e a linguagem de programação Java. Para exemplificar, podemos dizer que você precisa obter informações sobre uma empresa cujo CNPJ dela é "06.990.590/0001-23", para isso basta acessar o endpoint https://brasilapi.com.br/api/cnpj/v1/06990590000123. Com isso você consegue os dados da empresa no formato JSON. É aí que entra a biblioteca BrasilAPI-Java, com ela basta você informar o CNPJ para o método estático da classe BrasilAPI e receber o objeto CNPJ com todos os atributos populados, dessa forma:
CNPJ cnpj = BrasilAPI.cnpj("06.990.590/0001-23");
String razaoSocial = cnpj.getRazaoSocial();
System.out.println(razaoSocial);
O vídeo a seguir mostra o quão simples é utilizar a biblioteca, em aproximadamente um minuto e meio foi possível adicionar a lib ao meu projeto e obter o nome da rua a partir do CEP.
Recursos da biblioteca
Os métodos da biblioteca estão documentados no código para facilitar o entendimento do programador. Dentre os métodos disponíveis preciso enfatizar os que iniciam com "set" da classe BrasilAPI, pois eles são métodos de configuração para aprimorar a experiência ao consumir a API.
- O método "BrasilAPI.setEnableLog()", recebe como parâmetro um boolean, caso true, ativa o log no console, apresentando todo o fluxo de resultado obtido da API e os tratamentos dos dados.
- O método "BrasilAPI.setEnableCache()", recebe como parâmetro um boolean, caso true, habilita o cache, reduzindo o tempo de retorno de consultas repetidas realizadas durante os últimos 10 minutos.
- O método "BrasilAPI.setCacheTime()", recebe como parâmetro um Long, para definir em milissegundos o tempo de vida do cache que por padrão é 10 minutos, equivalente à 600000 milissegundos, caso não tenha definido o método "BrasilAPI.setEnableCache()" como true, o método "BrasilAPI.setCacheTime()" o habilita.
- O método "BrasilAPI.setCacheTimeMinutes()", funciona igualmente o método "BrasilAPI.setCacheTime()", a diferença está na unidade de medida a ser definida, ao invés de setar o tempo em milissegundos esse método recebe o tempo em minutos.
Como instalar a Biblioteca BrasilAPI-Java
A biblioteca foi compilada na versão 8 do Java e é compatível as versões 8 ou superior. Para instalar a biblioteca em um projeto Maven basta incluir a seguinte dependência no arquivo pom.xml.
<dependencies>
<dependency>
<groupId>com.github.SavioAndres</groupId>
<artifactId>BrasilAPI-Java</artifactId>
<version></version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
Você precisa apenas incluir a última versão no elemento <version>, a versão até o presente artigo é v1.0.5, mas para que você não utilize uma versão desatualizada é fortemente recomendado que verifique a última versão no repositório BrasilAPI-Java.