The aim of this project is to demonstrate how to create a simple banking API with a common Java stack.
- Java 17
- Spring Boot 2
- Postgres 13
- Liquibase
- MyBatis
- RabbitMQ
- JUnit 5
- Docker
- Java 17 SDK:
sudo apt install -y openjdk-17-jdk
- Docker:
https://docs.docker.com/get-docker/
Development has been mainly done on WSL2 using IntelliJ and bash environment.
cd docker/postgres && docker-compose up
cd docker/rabbitmq && docker-compose up
./gradlew test --continue
./gradlew integrationTest --continue
- account-api - exposes REST API to create and get accounts, create and get transactions.
- daemon - consumes RabbitMQ queue messages.