Gson für Java: Vollständige Anleitung mit Beispielen

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Was ist Gson und wozu wird es benötigt?

\n\n

Gson ist eine leistungsstarke Bibliothek für die Programmiersprache Java, entwickelt von Google, die es ermöglicht, Java-Objekte in ihre JSON-Darstellung zu konvertieren (Serialisierung) und umgekehrt Java-Objekte aus JSON-Strings wiederherzustellen (Deserialisierung). JSON (JavaScript Object Notation) ist ein leichtgewichtiges Datenaustauschformat, das häufig in Web-APIs, Konfigurationsdateien und zur Speicherung strukturierter Daten verwendet wird.

\n\n

Warum Gson verwenden? In der modernen Java-Entwicklung kommt kaum ein Projekt ohne die Arbeit mit JSON aus. Ob bei der Kommunikation mit REST-APIs, dem Lesen von Konfigurationen oder dem Datenaustausch zwischen Microservices – Gson bietet eine einfache, schnelle und zuverlässige Möglichkeit der Konvertierung. Im Gegensatz zur Standard-Java-Bibliothek (org.json) kann Gson direkt mit beliebigen Java-Objekten (POJOs) arbeiten und ordnet die Felder der Klasse automatisch den JSON-Schlüsseln zu. Dies erspart dem Entwickler manuelles Parsen und das Schreiben von Boilerplate-Code.

\n\n

Installation von Gson

\n\n

Gson ist eine Java-Bibliothek und wird daher über Abhängigkeitsverwaltungssysteme für die JVM verbreitet. Nachfolgend sind die Installationsmethoden für die gängigsten Build-Tools aufgeführt.

\n\n

Maven

\n

Fügen Sie die folgende Abhängigkeit zu Ihrer pom.xml-Datei hinzu:

\n
<dependency>\n    <groupId>com.google.code.gson</groupId>\n    <artifactId>gson</artifactId>\n    <version>2.10.1</version> <!-- Überprüfen Sie die aktuelle Version auf Maven Central -->\n</dependency>
\n\n

Gradle

\n

Fügen Sie in Ihre build.gradle-Datei ein:

\n
implementation 'com.google.code.gson:gson:2.10.1'
\n\n

Direkter JAR-Download

\n

Wenn Sie keine Build-Systeme verwenden, laden Sie die JAR-Datei von Maven Central herunter und fügen Sie sie dem Classpath Ihres Projekts hinzu.

\n\n

Wichtig: Im Gegensatz zu Python (pip) oder Node.js (npm) gibt es in Java keinen einheitlichen Paketmanager. Maven und Gradle sind der De-facto-Standard.

\n\n

Schnellstart: Erstes Beispiel

\n\n

Erstellen wir eine einfache Klasse Person, serialisieren sie in JSON und deserialisieren sie dann zurück.

\n\n
import com.google.gson.Gson;\n\npublic class QuickStart {\n    public static void main(String[] args) {\n        // 1. Objekt erstellen\n        Person person = new Person("Ivan", 30, "ivan@example.com");\n\n        // 2. Gson-Instanz erstellen\n        Gson gson = new Gson();\n\n        // 3. Serialisierung (Java -> JSON)\n        String json = gson.toJson(person);\n        System.out.println("JSON: " + json);\n        // Ausgabe: JSON: {"name":"Ivan","age":30,"email":"ivan@example.com"}\n\n        // 4. Deserialisierung (JSON -> Java)\n        String jsonInput = "{\\"name\\":\\"Maria\\",\\"age\\":25,\\"email\\":\\"maria@test.com\\"}";\n        Person personFromJson = gson.fromJson(jsonInput, Person.class);\n        System.out.println("Name: " + personFromJson.getName());\n        // Ausgabe: Name: Maria\n    }\n}\n\nclass Person {\n    private String name;\n    private int age;\n    private String email;\n\n    // Für die Deserialisierung wird zwingend ein Standardkonstruktor (ohne Argumente) benötigt!\n    public Person() {}\n\n    public Person(String name, int age, String email) {\n        this.name = name;\n        this.age = age;\n        this.email = email;\n    }\n\n    public String getName() { return name; }\n    public int getAge() { return age; }\n    public String getEmail() { return email; }\n}
\n\n

Wichtige Methoden und Funktionen von Gson

\n\n

Nachfolgend sind die wichtigsten Methoden der Gson-Bibliothek aufgeführt. Jede Methode wird mit einer Beschreibung und einem funktionierenden Beispiel erläutert.

\n\n

1. Gson.toJson(Object src)

\n

Funktion: Serialisiert das übergebene Java-Objekt in einen JSON-String. Dies ist die grundlegendste Methode zur Konvertierung eines Objekts in JSON.

\n

Empfehlungen