Microsserviço destinado à gerência de lançamentos contábeis.
- Spring Boot - Fácil configuração de uma aplicação baseada em Spring;
- PostgreSQL - Banco relacional que armazenará os lançamentos contábeis;
- Docker - Embutindo as dependências de uma aplicação em um contêiner, facilita a execução e o deploy da mesma em ambientes diversos;
- Docker Compose - Complementar ao Docker, permite que múltiplos contêineres sejam gerenciados ao mesmo tempo;
- Spring Tool Suite - IDE sob medida para aplicações baseadas em Spring;
- JPA - Especificação ORM, implementada neste projeto pelo Hibernate;
- Bean Validation - Especificação para validação de beans de forma declarativa implementada pelo Hibernate Validator;
- JUnit - Ferramenta adotada para confecção de testes unitários e de integração;
- Project Lombok - Redução da verbosidade do Java através da substituição de código repetitivo por metadados;
- Mockito - Facilitador do uso de mocks em testes unitários;
- Flyway - Versionamento do esquema de um banco de dados.
- Listagem de lançamentos contábeis:
- GET /lancamentos-contabeis
- Busca de lançamento contábil por id:
- GET /lancamentos-contabeis/{id}
- Filtragem de lançamentos contábeis por conta contábil:
- GET /lancamentos-contabeis/por-conta-contabil
- Exibição de estatísticas dos lançamentos contábeis cadastrados:
- GET /lancamentos-contabeis/estatisticas
- Cadastro de lançamento contábil:
- POST /lancamentos-contabeis
-
Baixe o repositório remoto do projeto para sua máquina com o comando:
git clone https://github.com/cleverton-heusner/contabil.git
-
No Spring Tool Suite, importe o repositório baixado como um projeto maven;
-
Caso a sua IDE já esteja integrada à dependência Project Lombok, pule para o passo 4. Do contrário, siga as instruções no link https://projectlombok.org/setup/eclipse;
-
Na raíz do projeto, digite o comando abaixo, em que 2 representa o número de instâncias desejadas da aplicação:
./instalar 2
-
Após as instâncias da aplicação terem sido inicializadas, basta descobrir a porta de acesso escolhida para cada uma. Para tal, execute o comando que segue:
docker ps
-
Supondo que uma das portas escolhidas seja 9999, é o momento de enviar requisições. Para cadastrar um lançamento contábil, envie para a URL http://localhost:9999/lancamentos-contabeis uma requisição POST contendo o seguinte JSON:
{ "contaContabil": "1234567", "data": "2018-12-27", "valor": 10.99 }
Para visualizar o lançamento contábil recém-cadastrado, envie para a mesma URL uma requisição GET.
Cleverton Heusner