Java EE: Datenaustausch mit JSON-B

POJOs serialisieren

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Das JSON-B Team hatte sich zum Ziel gesetzt, die Benutzerschnittstelle denkbar einfach zu gestalten. In diesem Video zeigt Ihnen Alexander Salvanos, wie schnell die Umwandlung eines Java-Objekts zu einem JSON-Dokument mit JSON-B gelingt.

Transkript

Zur Vorführung von JSON-B brauchen wir jetzt ein Beispielprogramm, und zwar habe ich mir ausgedacht, dass wir einen Kundendienst programmieren und dieser Kundendienst soll Objekte, Java Objekte, also POJOs entgegennehmen und JSON-Dokumente zurückliefern. Deshalb werden wir eine Klasse programmieren, die sich Customer Service nennt, und diese Klasse Customer Service soll Objekte einer Klasse Customer entgegennehmen und sie als JSON-Dokument zurückliefern. Hierfür benötigen wir also zwei Klassen, nämlich die Klasse Customer und die Klasse Customer Service. Die Klasse Customer werden wir genauso, wie es üblich ist, als POJO programmieren. Hierfür klicke ich jetzt auf Source Main Java, mit der rechten Maustaste gehe dann im Kontextmenü auf New und dann auf Class. So, jetzt brauchen wir einen Package-Namen. Den nenne ich de. java2enterprise .onlineshop.. Es handelt sich ja bei dem POJO um eine Modellklasse, wird sich die Klasse in das Package-Modell hinein, de.java2enterprise.onlineshop.model und als Klassenname schreibe ich Customer, also die englische Übersetzung für Kunde, und bestätige mit Finish. Ein POJO wird üblicherweise gemäß den Regeln einer JavaBean erstellt. Das bedeutet in unserem Fall, dass sie wenigstens Properties enthalten muss, auf die man über öffentliche Getter- und Setter-Methoden zugreift. Die Klasse Customer wird eine Property des Typs Long mit dem Bezeichner ID enthalten. Also private und dann Long ID. Außerdem werden wir zwei Properties des Typs String mit den Bezeichnern Email und Password hinzufügen. private String email und private String password. Öffentliche Getter und Setter werden wir über das Hauptmenü erstellen. Ich gehe im Hauptmenü auf Source und dann auf Generate Getters and Setters. Wähle über Select all alle aus und lasse die Getter und Setter public sein und klicke dann auf OK und erhalte dann auch Getter und Setter-Methoden zu den drei Properties. Außerdem werden wir auch eine toString()-Methode einbauen, damit wir es später bei der Ausgabe der Objekte auf der Konsole einfach haben. Hier füge ich wieder aufs Hauptmenü auf Source und dann auf Generate toString() und ja die Voreinstellung belasse ich, sowie sie ist. So scheint mir ganz in Ordnung zu sein. Klicke dann auf OK und erhalte diese toString()-Methode hier unten. Dann speichere ich die Datei Customer.Java aber ab und bin mit diesem Arbeitsschritt fertig. Jetzt brauche ich auch die Klasse Customer Service. Hierfür gehe ich im Hauptmenü wieder auf File > New, dann auf Class. Es ist nicht vorhanden in der Voreinstellung, also klicke ich dann auf Other und auf Java und dann auf Class, klicke dann auf Next und den Package Namen ändere ich auf de.java2enterprise.Onlineshop.Service. Die Klasse nenne ich CustomerService und lasse mir über Finish die Klasse erzeugen. Jetzt brauche ich auch die Klasse Customer Service. Hierfür gehe ich im Hauptmenü wieder auf File > New, dann auf Class. Es ist nicht vorhanden in der Voreinstellung, also klicke ich dann auf Other und auf Java und dann auf Class, klicke dann auf Next und den Package-Namen ändere ich auf de.java2enterprise.onlineshop.Service. Die Klasse nenne ich CustomerService und lasse mir über Finish die Klasse erzeugen. In einer Methode, die wir serialize nennen werden, nehmen wir dann ein Objekt der Klasse Customer entgegen und wandeln es in ein JSON-Dokument, um es als Rückgabewert zurückzuliefern. Ich brauche also zunächst mal eine Public-Methode. Die liefert ein Objekt des Typs String zurück, den JSON-Dokumente sind in Java String Objekte, und die Methode nenne ich serialize. Dann brauche ich die runden Klammern für meine Methode und setze geschweifte Klammern für die Methode hinzu. So, die Methode, die braucht einen Übergabeparameter. Der ist von Typ Customer und das Objekt des Übergabeparameters nenne ich auch Customer. Dann wandere ich mit der Maus über die Klasse Customer und lasse mir von Eclipse helfen, indem ich dann im Kontextmenü Import Customer auswähle. Ich könnte natürlich auch stattdessen Strg+Shift+O klicken. Das funktioniert auch, und dann wird mir in beiden Fällen hier oben die Import-Anweisung hinzugefügt. So, jetzt geht es weiter. Jetzt möchte ich gerne dieses Objekt zu einem JSON-Dokument umwandeln. Was muss ich hierfür tun? Zunächst mal verwende ich als Startpunkt das Interface JsonbBuilder, denn JsonbBuilder enthält eine Methode, die nennt sich create. Ich muss JsonbBuilder zunächst mal importieren und jetzt kann ich create aufrufen, und create liefert ein Objekt des Typs Jsonb zurück. Dieses Objekt nenne ich jsonb, lasse mir dann wieder von Eclipse helfen, indem ich mit der Maus über die lokale Variable wandere und dann sage Create local variable jsonb, denn dadurch wird mir dann der Datentyp jsonb hier vorne vorangestellt. So, jetzt habe ich ein Objekt von JSON-B und jetzt kann ich bei JSON-B Folgendes machen. jsonb., jetzt werden mir die Methoden von JSON-B angezeigt, und hier brauche ich die Methode toJson. Die ist weiter unten. toJson. Und die Methode toJson, die erwartet von mir, dass ich hier ein Java-Objekt übergebe. Das wäre dann in unserem Fall Customer. Und der Rückgabewert ist dann das JSON-Dokument, also schreibe ich einfach nur Return hinzu, weil ich das JSON-Dokument hier direkt zurückliefern möchte, und bin mit meiner Methode serialize auch schon fertig. In diesem Video habe ich Ihnen gezeigt, wie man ein POJO zu einem JSON-Dokument serialisiert. Wir haben die Umwandlung durchgeführt, indem wir uns zunächst mal ein Objekt der Klasse JSON-B erzeugt haben und bei JSON-B dann anschießend die Methode toJson ausgeführt haben.

Java EE: Datenaustausch mit JSON-B

Sehen Sie, wie sich Java- und JSON-Objekte praktisch transformieren lassen.

1 Std. 17 min (16 Videos)
Derzeit sind keine Feedbacks vorhanden...
Exklusiv für Abo-Kunden
Erscheinungsdatum:18.07.2018

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!