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:lu10:a [2025/11/09 23:47] apeterde:modul:ffit:3-jahr:java:learningunits:lu10:a [2025/11/10 00:02] (aktuell) apeter
Zeile 7: Zeile 7:
 Spring bietet eine sehr einfache Version, um Fehlerfälle mittels Exceptions abzuhandeln. Dabei wird direkt automatisch eine Antwort mit dem entsprechenden HTTP-Statuscode erstellt und zurückgeschickt. Spring bietet eine sehr einfache Version, um Fehlerfälle mittels Exceptions abzuhandeln. Dabei wird direkt automatisch eine Antwort mit dem entsprechenden HTTP-Statuscode erstellt und zurückgeschickt.
  
-^ Lange Variante ^ Verkürzte Variante ^ Mit Exception ^+Im nachfolgenden Beispiel wird jeweils ein Project-Objekt geladen und falls kein Objekt in der Datenbank vorhanden ist, wird der Statuscode 404 zurückgegeben.  
 + 
 +^ Lange Variante ^ Verkürzte Variante ^ Variante mit Exception ^
 | <WRAP> | <WRAP>
 <code java> <code java>
Zeile 25: Zeile 27:
 </WRAP> | <WRAP> </WRAP> | <WRAP>
 <code java> <code java>
-Project project = projectRepository.findById(projectName).orElseThrow( +Project project = projectRepository.findById(projectName).orElseThrow(() -> new ResponseStatusException(HttpStatus.NOT_FOUND, "Project not found"));
-        () -> new ResponseStatusException(HttpStatus.NOT_FOUND, "Project not found"));+
 </code> </code>
 </WRAP> | </WRAP> |
  
 +Ein sehr grosser Vorteil der dritten Variante ist die Wiederverwendbarkeit: Ein ResponseEntity-Objekt kann nur in der API-Methode zurückgegeben werden. Eine ResponseStatusException kann aber auch in einer verschachtelten Methode geworfen werden. Das erlaubt, dass man Methoden, die man zum Beispiel bei mehreren API-Methoden benötigt, bequem auslagern kann.
  
 ==== Validierung des JWT ==== ==== Validierung des JWT ====
Zeile 52: Zeile 54:
 </WRAP> </WRAP>
  
- +Wenn nun zudem Informationen wie das "Subject" aus dem JWT herausgelesen werden müssen, ergibt es keinen Sinn, eine separate "Exception"-basierte Validierung zu machen. Man kann die Validierung und das Auslesen direkt kombinieren. Nutzt man zudem die ResponseStatusException, hat man eine Methode, die man in mehreren API-Methoden einsetzen kann.
- +
- +
-Wenn zudem Informationen wie das "Subject" aus dem JWT herausgelesen werden müssen, ergibt es keinen Sinn, eine separate "Exception"-basierte Validierung zu machen.+
  
 <code java> <code java>
  • de/modul/ffit/3-jahr/java/learningunits/lu10/a.1762728479.txt.gz
  • Zuletzt geändert: 2025/11/09 23:47
  • von apeter