- We want to create two REST endpoints to support the query and storage of employee data.
- Data includes Name and Salary
- The two endpoints are: /users supports query parameters for min, max, offset, limit and sort /upload supports multipart/form data for CSV
- Implementation Specifics
- Spring Boot
- Java
- Shared through Github
- Validation logic for data and CSV file format
Refer these slides.
Maven project structure generated with default dependency using Spring Initializr Package structure follows MVC model Dependencies
- Java 17
- MySQL 8.0.27
- Spring Boot Web
- openCSV 5.4
- Jasypt Parameter Encryptor
- Apache Commons Lang3 3.12
- Maven 3.8.6
Download to your machine
$ git clone https://github.com/joccing/payroll.git
$ cd payroll
Amend root user's spring.datasource.password under resources/application.properties to your own password
Run Maven
./mvnw compile
./mvnw clean package
./mvnw spring-boot:run
MIT