Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:modul:ffit:3-jahr:java:learningunits:lu04:a [2025/09/07 22:46] apeterde:modul:ffit:3-jahr:java:learningunits:lu04:a [2025/09/09 00:10] (aktuell) apeter
Zeile 1: Zeile 1:
-====== LU04a - GUI ======+====== LU04a - GUI & API ====== 
 + 
 +Bisher haben wir die Library App der Einfachheit halber via Konsole bedient, aber eine grafische Benutzeroberfläche ist gewünscht.
  
 ==== Java GUI ==== ==== Java GUI ====
Zeile 21: Zeile 23:
  
 ==== REST API ==== ==== REST API ====
-Das Architekturmuster REST (Representational State Transfer) nutzt die Standardmethoden des HTTP-Protokolls für den Datenaustausch:+Das Architekturmuster REST (Representational State Transfer) ist heutzutage am gebräuchlichsten. 
 + 
 +REST nutzt die Standardmethoden des HTTP-Protokolls für den Datenaustausch:
   * **GET** -> Anfrage nach Informationen (Lesen von Daten)   * **GET** -> Anfrage nach Informationen (Lesen von Daten)
   * **POST** -> Übermittlung neuer Daten (Anlegen eines Datensatzes)   * **POST** -> Übermittlung neuer Daten (Anlegen eines Datensatzes)
Zeile 27: Zeile 31:
   * **PATCH** -> Übermittlung von Daten zur teilweisen Aktualisierung   * **PATCH** -> Übermittlung von Daten zur teilweisen Aktualisierung
   * **DELETE** -> Aufforderung zur Löschung eines Datensatzes   * **DELETE** -> Aufforderung zur Löschung eines Datensatzes
 +
 +==== Javalin ====
 +
 +Javalin ist ein leichtgewichtiges Web Framework (ähnlich wie Flask für Python).
 +
 +**Anforderung 4**: Die Logik des Befehls ''listBooks'' soll via API-Aufruf ausgeführt werden können.
 +
 +Die notwendige Abhängigkeit zu ''io.javalin:javalin'' wurde mit dem Commit ''a091fe7'' in ''build.gradle'' ergänzt.
 +
 +Erstellen Sie eine neue Klasse ''ch.bzz.JavalinMain'' mit einer Main-Methode und implementieren Sie Abfrage der Book-Objekte gemäss https://javalin.io/documentation.
 +
 +Die Route soll ''/books'' lauten und ''7070'' soll als Port verwendet werden. Das Limit wird via QueryParam mitgegeben. Die Bücherliste soll als JSON-Objekt serialisiert zurückgegeben werden.
 +
 +Testen Sie Ihre Applikation manuell unter: http://localhost:7070/books?limit=10
 +
 +Führen Sie zudem die Tests in der Klasse ''JavalinMainTest'' aus und korrigieren Sie Ihre Implementation bei Bedarf.
 +
 +
 +==== Postman ====
 +
 +Um POST,PUT etc. zu testen, empfiehlt sich Postman. Installieren Sie Postman (https://www.postman.com/downloads/) und testen Sie die Funktionsweise mit dem bereits implementierten API.
 +
 +{{:de:modul:ffit:3-jahr:java:learningunits:lu04:postman_get.png|}}
  • de/modul/ffit/3-jahr/java/learningunits/lu04/a.1757278003.txt.gz
  • Zuletzt geändert: 2025/09/07 22:46
  • von apeter