JSON zu Go-Struct
Wandle jedes JSON-Objekt online kostenlos mit unserem json-zu-go-struct-Konverter in einen Go-Struct um. Erkennt Go-Typen automatisch, erzeugt eigene Structs für verschachtelte Objekte, fügt json-Tags hinzu und wandelt snake_case-Schlüssel in PascalCase-Feldnamen um - keine Registrierung nötig.
Paste your JSON object and click Convert. The tool infers Go types for every field and generates a complete struct with json tags - including nested structs for nested objects. All conversion runs locally in your browser.
- Nested JSON objects generate separate named structs automatically
- snake_case JSON keys are converted to PascalCase Go field names
- ISO 8601 datetime strings are inferred as
time.Time - Use "Pointer for null fields" to generate
*Tfor nullable fields - Use "json + db tags" for GORM or sqlx database field mapping
Warum unseren JSON-zu-Go-Struct-Konverter verwenden?
- Sofortige JSON-zu-Go-Struct-Konvertierung: Wandle jedes JSON-Objekt sofort in deinem Browser in einen Go-Struct um. Unser json-zu-go-struct-Konverter erkennt alle Go-Typen (string, int64, float64, bool, []T, time.Time und verschachtelte Structs) in Millisekunden.
- Sichere JSON-zu-Go-Struct-Konvertierung online: die gesamte JSON-zu-Go-Struct-Konvertierung erfolgt lokal in deinem Browser. Deine JSON-Daten verlassen nie dein Gerät und gewährleisten 100 % Privatsphäre, wenn du unseren json-zu-go-struct-Konverter online nutzt.
- JSON zu Go-Struct online - keine Installation: Nutze unseren json-zu-go-struct-Konverter direkt in deinem Browser ohne Downloads, Plugins oder Software. Wandle JSON von jedem Gerät und zu jeder Zeit in Go-Structs um.
- Struct-Tags, Zeigertypen und verschachtelte Structs: Unser json-zu-go-struct-Konverter erzeugt automatisch json-Struct-Tags, unterstützt db-Tags für GORM/sqlx, konfiguriert Zeigertypen für nullbare Felder und erzeugt eigene benannte Structs für verschachtelte Objekte.
Häufige Anwendungsfälle für den JSON-zu-Go-Struct-Konverter
- Entwicklung von REST-API-Clients: Go-Entwickler nutzen unseren json-zu-go-struct-Konverter, um Structs aus Beispielen von REST-API-Antworten zu erzeugen. Füge das JSON aus deiner API-Dokumentation ein und erhalte sofort typisierte Go-Structs für json.Unmarshal und deinen HTTP-Client-Code.
- GORM- und Datenbankmodell-Definition: Backend-Entwickler nutzen unseren json-zu-go-struct-Konverter mit „json + db-Tags“, um GORM-Modelle und sqlx-Structs aus JSON-Daten zu erstellen. Erzeuge datenbankfertige Go-Structs mit json- und db-Feldtags in einem Schritt.
- Integration von Drittanbieter-APIs: Entwickler, die Stripe, GitHub, Twilio oder andere APIs integrieren, nutzen unseren json-zu-go-struct-Konverter, um Go-Structs aus den Beispielen der API-Dokumentation zu erzeugen. Erhalte präzise typisierte Structs, ohne den SDK-Quellcode zu lesen.
- Datenmodellierung in Microservices: Go-Microservice-Entwickler nutzen unseren json-zu-go-struct-Konverter, um JSON-Nutzlasten zu modellieren, die zwischen Diensten ausgetauscht werden. Wandle Request- und Response-Schemas in typisierte Go-Structs für gRPC-, REST- und Message-Queue-Handler um.
- Parsen von Konfigurationsdateien: Go-Entwickler nutzen unseren json-zu-go-struct-Konverter, um typisierte Structs aus JSON-Konfigurationsdateien zu erstellen. Ersetze untypisierten map[string]interface-Zugriff durch strukturierte Go-Structs für bessere IDE-Unterstützung und Compile-Zeit-Sicherheit.
- Migration von JavaScript zu Go: Teams, die von Node.js zu Go migrieren, nutzen unseren json-zu-go-struct-Konverter, um bestehende JSON-Datenstrukturen schnell als typisierte Go-Structs zu modellieren. Wandle API-Verträge und Datenmodelle in Sekunden um.
Was ist ein Go-Struct?
Ein Go-Struct ist ein zusammengesetzter Datentyp, der Felder unterschiedlicher Typen unter einem Namen gruppiert. Structs sind der wichtigste Weg, strukturierte Daten in Go zu modellieren - sie werden für JSON-Deserialisierung, Datenbankmodelle, API-Request-/Response-Typen und Konfigurationsobjekte verwendet. Unser json-zu-go-struct-Konverter analysiert ein JSON-Objekt und erzeugt einen vollständigen Go-Struct mit passenden Typannotationen und json-Struct-Tags für nahtloses JSON-Marshaling und -Unmarshaling. snake_case-JSON-Schlüssel werden automatisch gemäß den Go-Namenskonventionen in PascalCase-Feldnamen umgewandelt.
So funktioniert unser JSON-zu-Go-Struct-Konverter
- 1. Füge dein JSON ein: Gib ein beliebiges gültiges JSON-Objekt oder Array ein. Der Konverter akzeptiert jede JSON-Struktur, einschließlich tief verschachtelter Objekte und Arrays von Objekten. Die gesamte Verarbeitung erfolgt lokal in deinem Browser - deine JSON-Daten verlassen nie dein Gerät.
- 2. Optionen konfigurieren: Lege den Namen des Wurzel-Structs fest, wähle den Struct-Tag-Stil (nur json, json + db oder keine) und konfiguriere die Behandlung von Zeigertypen für nullbare Felder. ISO-8601-Datums-/Zeitstrings werden automatisch als time.Time erkannt.
- 3. Kopieren oder herunterladen: Sieh dir den generierten Go-Code mit package main-Deklaration und notwendigen Imports an. Kopiere ihn in die Zwischenablage oder lade ihn als models.go herunter, um ihn sofort in deinem Go-Projekt zu verwenden.
Zuordnung von JSON- zu Go-Typen
- string → string: JSON-Strings werden Go string zugeordnet. ISO-8601-Datums-/Zeitstrings (z. B. "2024-01-15T10:30:00Z" ) werden als time.Time erkannt.
- integer → int64, float → float64: JSON-Ganzzahlen werden int64 zugeordnet; JSON-Fließkommazahlen werden float64 zugeordnet.
- boolean → bool: JSON true / false werden Go bool zugeordnet.
- null → interface oder *T: JSON null wird standardmäßig interface zugeordnet. Im Modus „Zeiger für null-Felder“ werden null-Felder zu *string (oder dem passenden Zeigertyp).
- array → []T: JSON-Arrays werden Go-Slices zugeordnet. Der Elementtyp wird aus dem ersten Element abgeleitet. Leere Arrays werden []interface zugeordnet.
- object → verschachtelter Struct: verschachtelte JSON-Objekte erzeugen eigene benannte Go-Structs. Der Struct-Name wird aus dem JSON-Schlüssel in PascalCase abgeleitet.
Go-Struct-Tags erklärt
Go-Struct-Tags sind String-Literale, die an Struct-Felder angehängt werden und Metadaten für Kodierungs-/Dekodierungsbibliotheken bereitstellen. Das json-Tag steuert, wie das Feld zu und aus JSON marshalt wird - zum Beispiel ordnet `json:"first_name,omitempty"` das Go-Feld FirstName dem JSON-Schlüssel „first_name“ zu und lässt das Feld in der JSON-Ausgabe weg, wenn es leer ist. Das db-Tag wird von GORM und sqlx für die Zuordnung von Datenbankspalten verwendet. Unser json-zu-go-struct-Konverter erzeugt sowohl json- als auch db-Tags, wenn die Option „json + db-Tags“ ausgewählt ist, wodurch die erzeugten Structs sofort mit JSON-APIs und SQL-Datenbanken nutzbar sind.
Häufig gestellte Fragen
Ein JSON-zu-Go-Struct-Konverter analysiert ein JSON-Objekt und erzeugt einen Go-Struct mit korrekten Typannotationen und json-Tags. Unser Konverter erkennt die Typen string, int64, float64, bool, []T, time.Time und verschachtelte Structs - und wandelt snake_case-Schlüssel automatisch in PascalCase-Feldnamen um.
Verschachtelte JSON-Objekte erzeugen automatisch eigene benannte Go-Structs. Der Struct-Name wird aus dem JSON-Schlüssel in PascalCase abgeleitet. Zum Beispiel erzeugt eine Eigenschaft „address“ einen Struct Address.
JSON-Schlüssel werden in Go-Feldnamen in PascalCase umgewandelt. snake_case-Schlüssel (z. B. „first_name“) werden zu PascalCase (z. B. „FirstName“). Gängige Akronyme wie „id“, „url“, „api“ und „uuid“ werden großgeschrieben.
Go-Struct-Tags steuern das JSON-Marshaling. Das json-Tag ordnet Go-Feldnamen JSON-Schlüsseln zu - zum Beispiel ordnet `json:"first_name,omitempty"` FirstName dem JSON-Schlüssel „first_name“ zu.
Verwende Zeigertypen, wenn ein Feld im JSON fehlen oder null sein kann. Nutze „Zeiger für null-Felder“, um *T nur für Felder zu erzeugen, die im Beispiel-JSON null sind.
JSON-Strings, die dem ISO-8601-Datums-/Zeitformat entsprechen, werden automatisch als time.Time erkannt. Der Konverter fügt den notwendigen Import "time" zum generierten Code hinzu.
Ja! Unser json-zu-go-struct-Konverter ist 100 % kostenlos, ohne Registrierung, ohne Konto und ohne Nutzungslimits. Wandle JSON in Go-Structs für jedes Projekt direkt in deinem Browser um.
Absolut. Die gesamte JSON-zu-Go-Struct-Konvertierung erfolgt lokal in deinem Browser mit JavaScript. Es werden keine JSON-Daten an einen Server gesendet, was vollständige Privatsphäre gewährleistet.
Ja! Wähle „json + db-Tags“, um Structs mit json- und db-Struct-Tags zu erzeugen. Das db-Tag ordnet Go-Feldnamen Datenbankspalten für GORM, sqlx und andere Go-Datenbankbibliotheken zu.