💎 Esta aplicação é um exemplo de implementação do nosso framework de desenvolvimento, que fala sobre arquitetura hexagonal + TDD.
O caso de uso considera que dejamos cadastrar, cancelar e encontrar pedidos (OrderDto) que possuem uma lista de itens (OrderItemDto), um status do pedido, o valor total do pedido. Cada item da lista é composto por um produto (Product) e por sua quantidade. Por sua vez, um produto possui nome e preço.
☕ Java 11
🍃 SpringBoot
🐦 Maven
🌶️ Lombok
📰 Logback (SL4j)
🔮 Junit5
😜 Mockito
🐳 docker
☁️ Localstack (open-source mock para os serviços reais da AWS)
⚠️ Já ter instalado, Java 11, Maven e Lombok. Para mais dicas consultar a coluna
👥 Clonar este repositório na sua máquina.
💻 Importar o projeto no seu editor favorito.
🐚 No terminal executar mvn clean install
, para verificar se o build está correto.
🐚 No terminal inicialize a infraestrura disponível
docker-compose up -d
Para verificar se todos os serviços estão sendo executados corretamente, acesse http://localhost:4566/health.
💡 Mais dicas sobre o serviço de mensageria utilizado (SQS) podem ser encontradas na doc de infraestrutura.
🌓 Executar a aplicação em sua IDE favorita.
⚠️ Ao terminar a execução, lembre de desligar a instância do seu docker viadocker-compose down
.