Java EE 7: Web Services

Was ist JSON und was ist die JSON-P-API?

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Dieses Video klärt darüber auf, was die Java-API for JSON-Processing (JSON-P) ist und wie ein JSON-Dokument aufgebaut werden kann.

Transkript

Moderne verteilte Applikationen setzen sehr stark auf JSON und die Verarbeitung von JSON-Dokumenten. In diesem Video werden wir uns deshalb damit auseinandersetzen, was JSON überhaupt ist. Wir werden uns anschauen, wie ein JSON-Dokument aussieht. Und wir werden über JSON-P sprechen. Das ist die Java API for JSON Processing, die seit Java EE 7 in Version 1.0 vorliegt. Wenden wir uns zuerst der JSON-P API zu. Diese ist definiert in JSR-353 und stellt ein Framework dar, mit dem wir JSON-Dokumente erzeugen und auch bei Bedarf verarbeiten können. Dabei beinhaltet diese API letztlich zwei Ansätze, mit denen wir arbeiten können. Zum einen den sogenannten Streaming-Ansatz oder die Streaming API. Das ist ein Ansatz, der analog zu dem Ansatz funktioniert, den man in der XML-Welt unter dem Namen SAX oder StAX kennt. Da werden Events generiert, die dann verarbeitet werden können. Der zweite Ansatz ist der Model-Ansatz oder die Model API. Dieser Ansatz basiert darauf, dass man analog zum XML DOM, zum Document Object Model, das Dokument als Knoten repräsentiert, durch die man dann iteriert. Auf diese Art kann man besser mit der Tiefenstruktur eines Dokuments arbeiten. Man hat auf der anderen Seite den Vorteil, dass man sich auch etwas freier im Dokument bewegen kann. Das Ganze basiert auf dem Einsatz von JSON. JSON als Begriff steht für JavaScript Object Notation und bezeichnet ein sehr leichtgewichtiges Datenaustauschformat, das aus der JavaScript-Welt stammt. Die JavaScript Object Notation ist ursprünglich die Repräsentation eines Java-Objekts im Quellcode. Weil diese Repräsentation zum einen sehr einfach gehalten ist und zum anderen auch sehr schnell zu verstehen ist, hat sie sich letztlich für den Datenaustausch durchgesetzt. Im Gegensatz zu XML ist ein JSON-Dokument mit wesentlich weniger Markup behaftet. Wenn Sie sich ein XML-Dokument vorstellen wollen, da haben wir immer öffnende und schließende Elemente. Das gibt es so bei einem JSON-Dokument nicht. Dennoch kann ein JSON-Dokument auch tiefe Strukturen abbilden. JSON als "Sprache" ist dabei sprach- und plattformunabhängig zu sehen. Das bedeutet, Sie können das mit jeder Programmiersprache einlesen und verarbeiten. Und weil es nur Text ist, sollten Sie auch üblicherweise keine Probleme mit der Analyse der Inhalte haben, selbst wenn Sie keinen spezifischen JSONj-Parser besitzen. Plattformunabhängigkeit ist dadurch gegeben, dass es eigentlich für jede moderne Programmierplattform, sei es mit Java, sei es .NET, sei es PHP oder andere, einen entsprechenden Parser gibt, mit dem man relativ einfach und elegant arbeiten kann. JSON basiert darauf, dass die Daten stets als Name-Wert-Paare repräsentiert werden. und verschiedene Name-Wert-Paare durch Kommata voneinander getrennt werden. Lassen Sie uns nun ein einfaches JSON-Dokument erzeugen. Ich befinde mich hier in meiner Entwicklungsumgebung. Ich werde nun ein neues Java-Projekt anlegen, um ein JSON-Dokument darin zu beinhalten und später verarbeiten zu können. Ich werde dieses Projekt JsonProject nennen und lasse alle Einstellungen auf Standardeinstellungen stehen. Nun füge ich über das Kontextmenü und den Eintrag New und dann File ein neues JSON-Dokument dazu, und das nennt sich movies.json. In diesem Dokument werde ich nun zwei Filme verwalten. Wenn ich mehrere Dinge in einem JSON-Dokument beziehungsweise in einer JSON-Struktur verwalten möchte, muss ich die als ein Array ausführen. So ein Array beginnt immer mit einer eckigen Klammer und endet auch mit einer eckigen Klammer. In einem Array können sich einzelne Werte oder wie in diesem Fall einzelne Objekte befinden. Ein Objekt beginnt immer mit einer geschweiften Klammer und endet auch immer mit einer geschweiften Klammer. So ein Objekt besitzt in der Regel Felder, die sind ausgeführt als Name-Wert-Paare. Name und Werte sind durch einen Doppelpunkt voneinander getrennt und der Name steht immer in Anführungszeichen. Hier möchte ich Filme verwalten. Die erste Information, die ich anlege, ist der Name des Films. Wenn ich mehrere Name-Wert-Paare voneinander unterscheiden möchte, trenne ich sie durch Kommata. Jetzt lege ich das Feld actors an. Dieses Feld actors ist wiederum eine Liste, ein Array, ausgedrückt durch eine eckige Klammer, öffnend und schließend. Die einzelnen Werte in diesem Array sind in diesem Fall einfache Zeichenketten. Das heißt, ich erfasse sie einfach und trenne sie durch Kommata voneinander. Ich möchte eine weitere Information erfassen, nämlich das Erscheinungsjahr. JSON kann grundsätzlich mit verschiedenen Datentypen umgehen. Diese verschiedenen Datentypen werden ausgedrückt, indem wir einfach den entsprechenden hinschreiben. Je nachdem worum es sich handelt, eine Zeichenkette in Anführungszeichen, oder wie in diesem Fall eine einfache Zahl, unterscheidet später ein JSON-Parser, ob es sich um eine Zeichenkette, eine Zahl, oder aber um einen Booleschen Wert handelt, wie der letzte Parameter, den ich hier angegeben habe. Nun habe ich einen ersten Film definiert. Da ich mich in einem Array befinde, trenne ich den nächsten Datensatz vom aktuellen Datensatz ab, indem ich ein Komma schreibe, und kann nun den nächsten Datensatz angeben. Auch hier habe ich dieselben Informationen und ändere nur das, was mich tatsächlich interessiert. Damit habe ich meine JSON-Struktur fertig erstellt und kann diese später entsprechend verarbeiten und auch weitergeben. In diesem Video haben wir geklärt, was JSON-P, also die Java API for JSON Processing ist, nämlich eine allgemeingültige Schnittstelle, die aus zwei Komponenten, nämlich der Streaming API und der Model API besteht. Auch haben wir uns darüber unterhalten, was JSON ist, und haben eine JSON-Struktur erzeugt.

Java EE 7: Web Services

Steigen Sie ein in die Java-Enterprise-Welt und lernen Sie, wie Nachrichten ausgetauscht und Dienste definiert werden.

5 Std. 13 min (30 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!