Skip to content

A little API about accounting implemented in Spring Boot and Java.

Notifications You must be signed in to change notification settings

cleverton-heusner/contabil

Repository files navigation

Contábil

Introdução

Microsserviço destinado à gerência de lançamentos contábeis.

Principais tecnologias envolvidas

  • 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.

Recursos

  • 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

Instalando

  1. Baixe o repositório remoto do projeto para sua máquina com o comando:

    git clone https://github.com/cleverton-heusner/contabil.git  
  2. No Spring Tool Suite, importe o repositório baixado como um projeto maven;

  3. 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;

  4. 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
  5. 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
  6. 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.

Autor

Cleverton Heusner

About

A little API about accounting implemented in Spring Boot and Java.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published