It is a standalone Java microservice implemented with Maven and the built-in com.sun.net.httpserver HTTP server. A server starts on port 8080 accepting CRUD operations for /tables and /waiters.
- Data is stored in PostgreSQL via JDBC using a
DATABASE_URLloaded from.env. - The service auto-creates the
tablesandwaitersschema on startup. - Responses are JSON serialized with Jackson, and custom exceptions return consistent error codes.
It is composed of four independent projects:
Frontend/— React + Vite UI on port5173Backend/— Django API gateway on port8079RouteService/— Spring Boot route optimization on port8081StoreService/— Spring Boot store persistence on port8082
The gateway forwards requests to backend services:
GET /api/waiters/{id}→FluxoServiceon8080(no auth)POST /api/routes→RouteServiceon8081(API key)POST /api/stores→StoreServiceon8082(API key)
Quick run order:
- Start
lab02FluxoService first. - Start
RouteService. - Start
StoreService. - Start the Django
Backendgateway. - Start the React
Frontend.
For details on each subproject, see the nested lab04/README.md and the individual subdirectories.