- Create Spring Boot Java project
- Implement domain model
- Structuring logical layers: resource, service, repository
- Configure test database (H2)
- Populate the database
- CRUD - Create, Retrieve, Update, Delete
- Exception Handling
- Validation
- Documentation
- Encrypt password
- Authentication
- In order class will only be changed to PAID if there is payment
- Only admin user can:
- create new categories
- create new products
- change order status
- Java 17
- SpringBoot
- JPA
- H2 (test database)
- MySQL
- Bean Validation
- Swagger
- intelliJ IDEA
-
Clone this repository in your machine and run the project
API works on localhost:8080
Swagger can be visualized in localhost:8080/swagger-ui.html
