Server services - Leonhest/Smartmat GitHub Wiki
In this spring boot app, a REST resource can be thought of as a combination of a model and a controller. The model represents the data that is being exchanged, while the controller handles the HTTP requests and responses.
Here the model is implemented using entity classes that represent the data being exchanged. These entities are persisted to the database. The controller is implemented using a REST controller, which handles HTTP requests and responses and maps them to the appropriate model operations.
The controller package in this app is split into several different controllers who each are used to represent the different REST resources. Each of these resources contain many of the normal HTTP verbs such as GET, DELETE and POST used for CRUD operations(Create, Read, Update, Delete).
The representation of these resources are done almost exclusively via JSON on request and response.