Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

Microservices mit Spring Boot

RESTful Services testen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Lassen Sie sich in diesem Video von Karsten Samaschke erklären, wie Sie Ihre RESTful-Services-Applikation mithilfe des Browsers und eines Browser-Plug-ins daraufhin testen können, ob das Anlegen und Abrufen der Datensätze für das Gästebuch korrekt funktioniert.

Transkript

Eine RESTfull-Services-Applikation zu schreiben ist das eine, eine RESTfull-Services-Applikationen dann später zu betreiben ist das andere. Aber zwischen Schreiben und Betreiben fehlt noch einiges, beispielsweise das Testen. Wir werden uns deshalb in diesem Video damit auseinandersetzen, wie wir unsere RESTtfull-Services-Applikation mit Hilfe vom Browser und mit Hilfe eines Browser-Plug-ins testen können und damit sicherstellen können, dass sowohl das Anlegen als auch das Abrufen der Datensätze ordentlich funktioniert. Das Ganze kann natürlich keinen Komponententest ersetzen, ist aber sehr handlich, um sich einfach mal einen Überblick zu verschaffen, wie so eine Applikation tatsächlich funktioniert und tickt. Wir können unsere Applikation natürlich mit jedem Browser testen. Hier verwenden wir den Firefox-Browser und wir fügen dem Firefox-Browser noch ein REST-Plug-in, auch das gibt es für die meisten anderen Browser, hinzu, in diesem Fall heißt es REST Easy. Ich habe das schon einmal geöffnet und klicke nur noch auf die Schaltfläche "Zu Firefox hinzufügen". Ein Klick auf "Installieren" wird die Komponente dann installieren und nun können wir mit dem Testen beginnen. Zuvor allerdings müssen wir unsere Applikation starten. Wir machen dies, indem wir ein Rechtsklick auf den Applikationsnamen ausführen und danach aus dem Kontextmenü "Run As" "Spring Boot App" auswählen. Nach einigen Sekunden ist unsere Applikation einsatzfähig und wir können den Browser nutzen, um uns einen ersten Eindruck zu verschaffen. Wir rufen die Adresse http://localhost:8080 auf und der Pfad, der uns interessiert, ist "guestbook". Ein Klick auf Enter führt den eigentlichen Request aus und wir sehen, viel ist nicht zu sehen. Um dies zu ändern, müssen wir nun Datensätze der Applikation hinzufügen. Wir machen das am einfachsten, indem wir die vorhin installierte REST Easy Komponente starten und einfach nochmal die Adresse, sowie wir sie gerade eben auch eingegeben hatten, dort im Eingabefeld hinterlegen, also "localhost:8080/guestbook", achten Sie auf das abschließende Slash-Symbol, klicken Sie auf "Senden" und Sie werden feststellen, dass wir genau dieselben Daten sehen, wie bisher auch. Wenn wir nun neue Datensätze anlegen wollen, müssen wir zunächst einmal den HTTP-Methodentyp auf "PUT" umstellen und können danach in den Bereich "Data" wechseln. Hier können wir in dem Pull-Down-Menü auswählen, dass wir Custom-Daten übertragen wollen, nämlich Daten, die wir selber angeben, und der MIME Type, also der Inhaltstyp ist "application/json". Nun können wir innerhalb dieses Eingabebereiches Json-Daten hinterlegen. Json-Daten beginnen immer mit einer geschweiften Klammer und enden dann auch mit einer schließenden geschweiften Klammer und die eigentlichen Daten sind immer als Name-Wert-Paare abgelegt. Der erste Name, den wir vergeben, ist"title" und der Wert, der dazu gehört ist "Mein erster Eintrag", und zur besseren Lesbarkeit wechsle ich dann in die zweite Zeile. Der zweite Eintrag heißt "comment" und hier können wir auch einen beliebigen Text eingeben. Und der dritte Eintrag ist "commenter", das ist derjenige, der diesen Kommentar absendet. Da können Sie selbstverständlich auch andere Namen als meinen Namen eintragen. Nachdem wir dies erledigt haben, können wir den Datensatz senden. Wir klicken also auf die entsprechende Schaltfläche und wenn wir in den Bereich "Rohdaten" sehen, stellen wir fest, dass wir tatsächlich einen Datensatz haben, und wir stellen auch fest, es ist das Feld "date" neu hinzugekommen und gesetzt worden, und das Feld "id" existiert mit einem numerischen Wert, den wir vorher ebenfalls nicht eingegeben haben. Wir fügen noch einen zweiten Eintrag hinzu, klicken erneut auf "Senden" und wir stellen fest, Id ist nun 2 und Date hat ein etwas anderen Wert als zuvor. Wenn wir nun einmal die hinterlegten Daten abrufen, indem wir einfach die Methode auf "GET" ändern, denn wird nämlich dieser Data-Bereich nicht mitübertragen und auf "Senden" klicken, dann bekommen wir beide Einträge zurück. Soweit so super. Das funktioniert also alles genau wie vorgesehen, aber es gibt zwei Punkte, die mich persönlich stören. Zum einen ist das Feld "Date" ein numerischer Wert, damit kann ich jetzt in einer Anzeige relativ wenig anfangen. ich müsste das umrechnen in einen tatsächlichen Datumswert. Das sollten wir ändern. Und wenn Sie sich die Sortierung anschauen, beim Gästebuch sollte normalerweise immer der letzte Eintrag zuerst kommen und nicht der erste Eintrag, das heißt, wir müssen auch nochmal an die Sortierung der Daten herangehen. Wir werden uns nun einmal anschauen, wie wir zunächst das Datumsfeld ändern können und wie wir danach im zweiten Schritt die Sortierung entsprechend anpassen können. Die Art und Weise, wie Daten serialisiert beziehungsweise deserialisiert werden, können wir auf Ebene von RESTful-Services-Applikation, die mit Json arbeiten, mit Hilfe der JsonFormat-Annotation beeinflussen. Diese JsonFormat-Annotation wird oberhalb des Feldes definiert, dessen Ausgabeformat ich ändern möchte und mit Hilfe von deren Eigenschaft "pattern" kann ich festlegen, wie das für die Serialisierung beziehungsweise bei der Deserialisierung erwartete Format aussieht. Hier wählen wir ein deutsches Datumsformat bestehend aus Tag, Monat, Jahr, Stunde, Minute, Sekunde. Nach dem Speichern und dem Neustart unserer Applikation, können wir uns einmal anschauen, ob diese Änderung funktioniert und wie sie sich auswirkt. Wir legen also nun zunächst einmal erneut Datensätze an, die Methode ist weiterhin "PUT", die Daten müssen wir entsprechend mitangeben, ein Klick auf "Senden" lässt uns dann schon mal sehen, dass das Datum tatsächlich in einem anderen angenehmeren Format zugegeben wird, und selbiges gilt natürlich auch für einen zweiten Eintrag, und ändern wir die Methode auf "GET" und rufen die Daten ab, funktioniert das wunderbarer Weise auch beim Abrufen der Daten, dass das Datum jetzt so ausgegeben wird, wie wir es erwarten. Jetzt fehlt eigentlich nur noch eine Kleinigkeit, nämlich die geänderte Sortierung. Um diese Sortierung zu ändern, haben wir zwei Möglichkeiten. Eine Möglichkeit besteht auf Ebene des Controllers, dass wir beim Abrufen der Daten die Daten nehmen und dann nach dem Abrufen umsortieren. Die zweite Möglichkeit besteht dadrin, dass wir auf Ebene des Guestbook Repositories eine zusätzliche Methode einfügen, die uns die Daten dann schon direkt in der richtigen Reihenfolge zurückgibt. Und wir werden genau diesen Weg wählen. Wir legen eine Methode an, die ist vom Typ "java.util.List" und die Liste ist vom Typ "GuestbookEntry" und diese Methode heißt "findAll" und jetzt kommt ein wenig Spring-Data-Jpa-Magie, der Name geht weiter mit "ByOrder", damit geben wir an, es soll sortiert werden, "ById", jetzt haben wir angegeben, wonach sortiert werden soll,"Desc". Und damit sagen wir, das ist absteigend sortiert werden soll. Das heißt, zunächst kommt der Datensatz mit der höchsten Id und danach in absteigender Order die entsprechend anderen Datensätze. Damit ist hier alles schon erledigt. Den Rest macht Spring Data für uns, das heißt Spring Data analysierte diesen Methodennamen, "findAll" sagt ihm, gib alle Datensätze zurück, und der zweite Teil "ByOrderByIdDesc" sagt ihm, sortiere sie nach Id absteigend. Alles was wir jetzt noch tun müssen, ist im Guestbook Controller die entsprechende Methode aufzurufen und die Applikation erneut zu starten. Im REST Easy legen wir jetzt wieder Datensätze an, erster Eintrag, zweiter Eintrag und auch gerne noch ein dritter Eintrag und rufen diese Datensätze dann wieder ab und jetzt stellen wir fest, zuerst kommt der dritte Eintrag, danach der zweite und danach der erste und auch das Datum entspricht natürlich noch der Art und Weise, wie wir es zuvor notiert haben. Damit haben wir in diesem Video unserer Applikation in Betrieb genommen. Wir haben sie auf eine einfache Art und Weise mit Hilfe des Browsers und der REST Easy Komponente getestet und wir haben dann gleich noch ein wenig Schönheitspflege betrieben, indem wir dafür gesorgt haben, dass das Datum in einem für uns besser lesbaren und verarbeitbaren Format zurückkommt und dass die Datensätze in umgekehrter Reihenfolge ihres Eintrags zurückgegeben werden. Das ist schon eine ganze Menge, was wir mit relativ wenig Aufwand hier bewerkstelligen konnten.

Microservices mit Spring Boot

Sehen Sie, wie moderne Applikationen für Cloud-Umgebungen entstehen.

2 Std. 14 min (12 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!