Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
de:modul:ffit:3-jahr:java:learningunits:lu08:a [2025/10/27 02:53] apeterde:modul:ffit:3-jahr:java:learningunits:lu08:a [2025/10/27 03:21] (aktuell) apeter
Zeile 1: Zeile 1:
-====== LU08a - Schnittstellendokumentation ======+====== LU08a - Persistierung ======
  
-Da in grösseren Entwicklungsteams oft unterschiedliche Leute an Front- und Backend arbeiten, ist eine entsprechende Dokumentation der Schnittstellen (z. B. REST APIs) unabdingbar. +TODO
-Dadurch wird sichergestellt, dass die Schnittstellen seitens Backend korrekt implementiert und seitens Frontend korrekt verwendet werden. +
- +
- +
-==== OpenAPI ====  +
-OpenAPI (https://www.openapis.org/) ist ein gebräuchlicher Standard, um APIs in einer JSON- oder YAML-Datei zu spezifizieren.  +
- +
-Machen Sie im Accounting-App-Projekt einen cherry-pick auf ''TODO'' um im Verzeichnis ''documentation/'' die Datei ''openapi.yaml'' zu erhalten. +
- +
-==== Swagger ==== +
-Swagger (https://swagger.io/) umfasst einige Tools rund um OpenAPI. +
-Beispiele: +
- +
-^ Name ^ Verwendungszweck ^ +
-| Swagger Editor | Bearbeiten/Validieren von OpenAPI-Dateien |  +
-| Swagger UI | Interaktive API-Dokumentation im Browser |  +
-| Swagger Codegen / OpenAPI Generator | Generieren von  Client- oder Server-Code aus OpenAPI-Dateien |  +
- +
-Nutzen Sie den Swagger Editor (https://editor.swagger.io/) um die definierten APIs in ''openapi.yaml'' anzusehen und zu verstehen. +
- +
-Theoretisch könnten Sie auch das Swagger-UI (https://swagger.io/tools/swagger-ui/) benutzen, dieses müssten Sie aber erst herunterladen. +
- +
-Builden Sie Ihr Projekt neu. Falls Sie dafür die IDE benutzen, müssen Sie sicherstellen, dass die IDE die Gradle-Tasks korrekt ausführt. +
- +
-Der neue Task ''openApiGenerate'' in der Datei ''build.gradle'' erstellt nun automatisch bei jedem Build die entsprechenden Interfaces für die APIs. +
- +
-  - Prüfen Sie, ob in ''build/generated/openapi/src/main/java/ch/bzz/generated/api/'' und in ''build/generated/openapi/src/main/java/ch/bzz/generated/model/'' korrekterweise Klassen erstellt wurden. +
-  - Fügen Sie unter ''src/main/java/ch/bzz/controller'' die Klassen ''AccountApiController.java'', ''BookingApiController.java'' und ''ProjectApiController.java'' hinzu und lassen Sie die Klassen die entprechenden Interfaces implementieren. +
- +
-<code java> +
-@RestController +
-public class ProjectApiController implements ProjectApi { +
-    .... +
-+
-</code> +
- +
- +
-Man kann auch mit der OpenAPI-Datei und Postman die APIs testen.+
  
 +==== Hibernate ==== 
  
 +TODO
  • de/modul/ffit/3-jahr/java/learningunits/lu08/a.1761530019.txt.gz
  • Zuletzt geändert: 2025/10/27 02:53
  • von apeter