Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Datenformate: JSON und XML | Grundlagen der Backend-Entwicklung
Spring Boot Backend
course content

Kursinhalt

Spring Boot Backend

Spring Boot Backend

1. Grundlagen der Backend-Entwicklung
2. Spring Boot Grundlagen
3. RESTful API
4. Arbeiten mit Datenbanken
5. Testen von Backend-Anwendungen

book
Datenformate: JSON und XML

In den vorherigen Kapiteln haben wir untersucht, wie HTTP funktioniert und wie es Daten überträgt. In diesem Kapitel werden wir uns Formate wie JSON und XML ansehen, die verwendet werden können, um Daten im Body einer Serverantwort zu übertragen oder beim Senden einer Anfrage an den Server.

Was ist JSON?

JSON wird für die Übertragung von Daten in einem Schlüssel-Wert-Format verwendet, was den Zugriff auf Daten und deren direkte Umwandlung in ein Objekt sehr praktisch macht.

Dieses Format unterstützt Arrays, Objekte sowie primitive Werte wie Strings, Zahlen und boolesche Werte.

Datenformate in JSON

Für Arrays in JSON können wir die folgende Syntax verwenden:

Wir schließen alle Informationen in geschweifte Klammern ein und geben den Schlüsselnamen (wie "courses") in Anführungszeichen an. Der Wert, der mit diesem Schlüssel verbunden ist, ist in unserem Fall ein Array (["Math", "Science"]), das in eckigen Klammern eingeschlossen ist, um anzuzeigen, dass es sich um ein Array handelt.

Wenn wir einfache primitive Typen (wie Zahlen, Zeichenfolgen oder boolesche Werte) in JSON übertragen möchten, können wir dies so tun:

Wir können Objekte im JSON-Format übertragen. Ein Objekt wird durch eine Menge von Schlüssel-Wert-Paaren dargestellt, die in geschweifte Klammern eingeschlossen sind.

Jeder Schlüssel ist ein String und wird von einem Doppelpunkt gefolgt, mit dem entsprechenden Wert, der ein weiteres Objekt, ein Array, ein primitiver Typ oder null sein kann.

Übertragung von JSON über HTTP

Beim Übertragen von Daten im JSON-Format über HTTP verwenden sowohl Anfragen als auch Antworten den Content-Type Header, der auf application/json gesetzt ist. In einer Anfrage werden die Daten im Body der Anfrage platziert, während in einer Antwort die Daten im Body der Antwort platziert werden.

Anfragestruktur:

Antwortstruktur:

JSON-Serialisierung und Deserialisierung

Serialisierung wandelt ein Objekt oder eine Datenstruktur in ein Format um, das für die Netzwerkübertragung oder Dateispeicherung geeignet ist.

Deserialisierung ist der umgekehrte Prozess, der Daten aus dem JSON-Format zurück in ein Objekt oder eine Datenstruktur umwandelt, um sie im Code zu verwenden.

Abhängigkeit aus dem Video zur Integration von Serialisierung und Deserialisierung von JSON. Dies ist notwendig, damit wir die ObjectMapperKlasse verwenden können.

Sie müssen diese Abhängigkeit in die pom.xml Datei einfügen und aktualisieren.

Wie man das Maven-Repository verwendet

Was ist XML?

XML repräsentiert Daten mithilfe von Tags, die eine hierarchische Struktur bilden. Jedes Element hat sowohl öffnende als auch schließende Tags und kann auch Attribute enthalten.

XML-Syntax

Wie Sie sehen können, basiert hier alles auf Tags. Listen und Objekte sind nicht von Natur aus unterschiedlich, aber wenn wir einen einfachen Wert darstellen wollen, dient der Tag-Name als Schlüssel, und der Wert innerhalb der Tags wird der Wert sein.

XML-Übertragung über HTTP:

Zum Übertragen von XML-Daten kann der Content-Type Header entweder auf application/xml oder text/xml gesetzt werden. Die Daten werden auch im Body der Anfrage oder Antwort platziert.

Beispiel einer Anfrage:

Beispiel einer Antwort:

XML-Serialisierung und -Deserialisierung

Abhängigkeit aus dem Video zur Integration der Serialisierung und Deserialisierung von XML. Dies ist notwendig, damit wir die XmlMapperKlasse verwenden können.

Sie müssen diese Abhängigkeit in die pom.xml Datei einfügen und aktualisieren.

Zusammenfassung

JSON ist die bevorzugte Wahl für moderne Webanwendungen aufgrund seiner Leichtigkeit und Einfachheit. Während XML in vielen Web-Szenarien weniger praktisch sein kann, ist es nützlich in Fällen, die eine komplexe Datenstruktur und strikte Schemata erfordern.

1. Welches Format wird verwendet, um Daten als key-value-Paare darzustellen und ist leichter und praktischer für die Netzwerkübertragung?

2. Welcher der folgenden Code-Snippets ist ein gültiges JSON?

Welches Format wird verwendet, um Daten als `key-value`-Paare darzustellen und ist leichter und praktischer für die Netzwerkübertragung?

Welches Format wird verwendet, um Daten als key-value-Paare darzustellen und ist leichter und praktischer für die Netzwerkübertragung?

Wählen Sie die richtige Antwort aus

Welcher der folgenden Code-Snippets ist ein gültiges `JSON`?

Welcher der folgenden Code-Snippets ist ein gültiges JSON?

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 5
We're sorry to hear that something went wrong. What happened?
some-alt