DT Dev Tools

JSON zu Java POJO Konverter — Klassen generieren

JSON online in Java-POJO-Klassen umwandeln: mit Jackson-Annotationen, Gettern und Settern oder Lombok, List<T>-Collections und eigenem Package. Kostenlos und privat.

🔒 Läuft vollständig in Ihrem Browser — nichts wird hochgeladen

Werbung

Java-POJOs aus JSON erzeugen

Eine JSON-API auf Java abzubilden bedeutet meist, einen Stapel einfacher Java-Objekte mit privaten Feldern, Gettern, Settern und Annotationen zu schreiben. Dieser JSON-zu-Java-Konverter erzeugt sie in einer Sekunde aus einem Beispiel. Jedes JSON-Objekt wird zu einer Klasse, jeder Schlüssel zu einem camelCase-Feld mit @JsonProperty, damit Jackson es dem ursprünglichen Namen zuordnet, verschachtelte Objekte werden zu eigenen Klassen, und Arrays werden zu List<T> oder T[]. Datum-Zeit-Strings werden erkannt und mit der java.time-API typisiert, und Zahlen werden anhand der gesehenen Werte in long und double aufgeteilt.

Die Engine ist quicktype, das jedes Element eines Arrays betrachtet, bevor es einen Typ ableitet. Ein Feld, das nur in einigen Einträgen vorkommt, landet trotzdem in der Klasse, sodass die Deserialisierung der vollständigen Antwort nicht an unbekannten Eigenschaften scheitert.

Jackson, Lombok und Packages

Die Standardausgabe zielt auf Jackson, die am weitesten verbreitete JSON-Bibliothek in Spring Boot und im übrigen Java-Ökosystem, und enthält eine Konverterklasse mit den Hilfsmethoden fromJsonString und toJsonString. Wenn Sie nur Datenklassen möchten, aktivieren Sie Classes only. Aktivieren Sie Use Lombok, um explizite Accessoren gegen Lombok-Annotationen zu tauschen und jede Klasse kompakt zu halten. Legen Sie den Package-Namen fest, damit der erzeugte Code zu Ihrem Quellbaum passt, und benennen Sie die Root-Klasse passend zu Ihrer Domäne um, zum Beispiel CustomerResponse.

Tipps für bessere Java-Modelle

Liefern Sie ein Beispiel mit ausgefüllten optionalen Feldern und mehreren Array-Elementen, denn die Typableitung kann nur vorhandene Werte beschreiben. Leere Arrays oder null-Werte werden zu Object, was Sie vermutlich ersetzen wollen. Teilen Sie die Ausgabe nach der Erzeugung in eine Datei pro öffentlicher Klasse auf, falls Ihr Build das verlangt, prüfen Sie Zahlenbereiche und Währungsfelder, die BigDecimal sein sollten, und wandeln Sie bekannte Strings in Enums um. Da die Konvertierung lokal im Browser stattfindet, können Sie unbedenklich interne Payloads einfügen.

So verwenden Sie

  1. JSON einfügenFügen Sie ein JSON-Dokument ein oder laden Sie das Beispiel, um die Funktion zu sehen.
  2. KonfigurierenLegen Sie Root-Klassennamen, Package, Collection-Typ und Lombok-Einstellung fest.
  3. POJOs kopierenKopieren Sie die Java-Klassen oder laden Sie sie als .java-Datei herunter.

Häufig gestellte Fragen

Welche JSON-Bibliothek verwendet die Ausgabe?
Die erzeugten Klassen nutzen Jackson-Annotationen wie @JsonProperty und enthalten eine kleine Konverterklasse. Aktivieren Sie Classes only, um einfache POJOs zu erhalten.
Kann es Lombok-Klassen erzeugen?
Ja. Aktivieren Sie Use Lombok, und Getter und Setter werden durch Lombok-Annotationen ersetzt, sodass die Klassen kurz bleiben.
Verwendet es List oder Arrays?
Ganz nach Wahl. Wählen Sie List<T> für Collections oder T[] für einfache Arrays.
Wird mein JSON hochgeladen?
Nein. Der Konverter läuft vollständig in Ihrem Browser und sendet keine Daten an einen Server.
Werbung