Application built to organize a real estate website in order to practice and apply the concepts of a CRUD using Spring Boot and the MVC architectural pattern.
┌───────┐ ┌──────────┐ ┌──────────┐
│ ☁️ <───> ☕ <───> 💾 │
│ Web │ HTTP │ Spring │ │ Database │
└───────┘ │ Service │ └──────────┘
└──────────┘
The internal architecture:
Controller
classes provide endpoints and deal with HTTP requests and responses from/to the viewService
classes contains the business rules, receive the request from a controller and talk to repository to acess data to return a response to controllerRepository
classes interface with the DAO internally that interface with the database and take care of writing and reading data to/from persistent storage
┌───────────────────── Spring Service ──────────────────────┐
│ │
Request │ │
┌────────┐ ─────────> ┌────────────┐ ┌─────────┐ ┌────────────┐ │ ┌──────────┐
│ View │ <────────── │ Controller │ <───> │ Service │ <───> │ Repository │ <────> │ Database │
└────────┘ Response │ └────────────┘ └─────────┘ └────────────┘ │ └──────────┘
│ │
└───────────────────────────────────────────────────────────┘