Files
banking-service/README.md
2023-05-15 22:52:52 +02:00

59 lines
1.2 KiB
Markdown

# Banking Service REST API
## Development assignment for Backend Developer at Finologee
### What has been implemented
* All the main requirements
* Payment execution as a single transaction
* Swagger specification for the REST API
* Docker build
The application runs on Java 20 using Spring Boot 3.0.6.
An H2 database is populated on startup. The initial data is described below.
### What has not been implemented
* Pagination
* Registering fraud tentatives
### How to run the application
The application runs on Java 20, so a JDK should be installed on the build system.
#### Manually
Using Maven, you can run the following command:
```shell
./mvnw install
```
This will put an executable JAR in `./target`, which can be run using:
```shell
java -jar target/*.jar
```
#### Using Docker
Build the JAR file as before and then execute the following command to extract the layers from the JAR:
```shell
mkdir target/extracted && java -Djarmode=layertools -jar target/*.jar extract --destination target/extracted
```
Building the image:
```shell
docker build -t bankingservice .
```
Run it using the following command:
```shell
docker run -p 8080:8080 bankingservice
```
### Populated data