REST-API-Backend für die BusinessTrips-Applikation (Mitarbeitende, Business
Trips, Flüge, Meetings). Teil der CI/CD-Übungssequenz RefCard 02–05
(siehe docs/future/RefCard-03-RefCard-05-own-repos.md)
— dieses Repository ist RefCard 03: Spring Boot Backend mit MariaDB.
- Java 21, Spring Boot 4.1 (Web, Data JPA)
- MariaDB (lokal via Docker Compose) / H2 (Default, für Tests und schnellen lokalen Start)
- Maven (Maven Wrapper, kein lokales Maven nötig)
./mvnw spring-boot:runStartet auf Port 8080 mit einer flüchtigen In-Memory-H2-Datenbank (Daten sind nach jedem Neustart weg, werden aber automatisch neu geseedet).
docker compose -f docker/docker-compose.yml up -d
./mvnw spring-boot:run -Dspring-boot.run.profiles=mariadb- MariaDB läuft dann auf
localhost:3306(Datenbankdb_biztrips, Userroot, Passwortbbw123) - phpMyAdmin ist unter http://localhost:8082 erreichbar (gleiche Zugangsdaten)
- Die Demo-Daten werden nur beim allerersten Start eingefügt — ein Neustart der Applikation dupliziert sie nicht
./mvnw testBasis-Pfad: /v1
| Endpoint | Beschreibung |
|---|---|
GET /v1/trips, POST /v1/trips, GET /v1/trips/{id}, DELETE /v1/trips/{id} |
Business Trips |
GET /v1/employees, POST /v1/employees, GET /v1/employees/{id}, PUT /v1/employees/{id}, DELETE /v1/employees/{id}, DELETE /v1/employees |
Mitarbeitende |
GET /v1/flights, POST /v1/flights, GET /v1/flights/{id}, PUT /v1/flights/{id}, DELETE /v1/flights/{id}, DELETE /v1/flights |
Flüge |
GET /v1/meetings, POST /v1/meetings, GET /v1/meetings/{id}, PUT /v1/meetings/{id}, DELETE /v1/meetings/{id}, DELETE /v1/meetings |
Meetings |
POST /v1/signIn |
Login (Demo-User: joe / 1234) |
GET /actuator/health |
Health-Check (Spring Boot Actuator) — prüft u. a. die Datenbankverbindung |
src/main/java/ch/bbw/trips/ Applikationscode (Controller, Entities, Repositories, DTOs)
docker/docker-compose.yml MariaDB + phpMyAdmin für die lokale Entwicklung
docs/exercises/ CI/CD-Übungen (EX-01 EC2, EX-02 Docker Hub, EX-03 ECS/RDS)
docs/reviews/ Code-Reviews
docs/future/ Planungsentscheidungen für RefCard 03–05
Der Tag v1-start markiert den Ausgangspunkt für die Übungen in docs/exercises/ — bewusst ohne Dockerfile, .dockerignore, .github/workflows/deploy.yml und task-definition.json, da ihr genau diese Dateien in EX-01/EX-02/EX-03 selbst erstellt.