This project demonstrates following:
- spring boot rest controller
- REST methods for CRUD operations
- spring data jpa
- swagger UI docs
- modelmapper
- mockito testing framework
- separation of client views from ORM objects for extensible API design
- javax validation constraints
mvn spring-boot:run
http://localhost:8080/swagger-ui/index.html?configUrl=/v3/api-docs/swagger-config#/
http://localhost:8080/swagger-ui/index.html
GET http://localhost:8080/api/v1/books/
GET http://localhost:8080/api/v1/books/2
POST http://localhost:8080/api/v1/books/ Content-Type: application/json
{ "id": 4, "title": "book4", "author": "author4" }
DELETE http://localhost:8080/api/v1/books/3
PUT http://localhost:8080/api/v1/books/2 Content-Type: application/json
{ "id": 2, "title": "book22", "author": "author2" }
PATCH http://localhost:8080/api/v1/books/2 Content-Type: application/json
{ "title": "book223" , "author": "author2" }