DT Dev Tools

JSON till Kotlin — Generera dataklasser

Konvertera JSON till Kotlin-dataklasser online för kotlinx.serialization, Jackson eller Klaxon, med nullbara typer och nÀstlade klasser. Gratis och privat.

🔒 Körs helt i din webblĂ€sare — ingenting laddas upp

Annons

Kotlin-dataklasser frÄn ett JSON-exempel

Kotlin-dataklasser passar naturligt för JSON-payloads, men att skriva dem för hand till ett stort svar — sĂ€rskilt pĂ„ Android, dĂ€r varje skĂ€rm verkar anropa Ă€nnu en endpoint — Ă€r tröttsamt. Den hĂ€r JSON till Kotlin-konverteraren genererar dem frĂ„n ett exempel. Varje objekt blir en data class med val-egenskaper, nycklar konverteras till camelCase med annoteringar som bevarar de ursprungliga JSON-namnen, nĂ€stlade objekt blir egna klasser och arrayer blir List<T>. FĂ€lt som saknas eller Ă€r null i vissa exempel blir nullbara typer, sĂ„ du fĂ„r Kotlins null-sĂ€kerhet exakt pĂ„ de egenskaper som behöver den.

Typinferensen kommer frÄn quicktype, som slÄr ihop varje element i varje array. Valfria fÀlt som bara finns i ett fÄtal objekt fÄngas ÀndÄ, vilket förhindrar körtidsfel nÀr deserialiseraren möter en nyckel som modellen inte kÀnner till.

kotlinx.serialization, Jackson eller Klaxon

Standardresultatet riktar sig mot kotlinx.serialization, JetBrains multiplattformsbibliotek: klasserna annoteras med @Serializable och nycklarna med @SerialName. Serverprojekt byggda pÄ Spring föredrar ofta Jackson, som genererar @JsonProperty-annoteringar och en ObjectMapper-hjÀlpare. Klaxon Àr ett lÀttviktigt alternativ som vissa Android-projekt fortfarande anvÀnder. Om du tÀnker koppla in serialiseringen sjÀlv markerar du Data classes only. Ange paketnamnet sÄ att filen kompilerar dÀr den placeras.

Tips för rena Kotlin-modeller

Ge konverteraren ett fullstĂ€ndigt exempel — flera arrayelement, ifyllda valfria fĂ€lt och nĂ€stlade objekt som inte Ă€r tomma — sĂ„ att nullbarhet och typer infereras korrekt. Byt namn pĂ„ rotklassen till ditt domĂ€nnamn innan du laddar ner. ÖvervĂ€g dĂ€refter att ersĂ€tta strĂ€ngar med kĂ€nda vĂ€rden med enum class-typer, anvĂ€nda Instant eller LocalDate dĂ€r din serialiserare stöder det och lĂ€gga till standardvĂ€rden för fĂ€lt som ditt API utelĂ€mnar. Genereringen sker helt i din webblĂ€sare, sĂ„ det Ă€r lugnt att klistra in riktiga svar som fĂ„ngats under felsökning.

Hur man anvÀnder

  1. Klistra in JSONKlistra in ett JSON-objekt eller en array, eller ladda exemplet.
  2. VĂ€lj serialiserareVĂ€lj kotlinx.serialization, Jackson eller Klaxon och ange paketet.
  3. Kopiera dataklassernaKopiera Kotlin-koden eller ladda ner den som en .kt-fil.

Vanliga frÄgor

Vilka serialiseringsbibliotek stöds?
kotlinx.serialization (standard), Jackson och Klaxon. Var och en ger rÀtt annoteringar och hjÀlpkod för det biblioteket.
Hur typas nullbara fÀlt?
FÀlt som Àr null eller saknas i vissa exempel deklareras med en nullbar typ som String? och standardvÀrdet null.
Kan jag fÄ dataklasser utan annoteringar?
Ja. Markera Data classes only för att fÄ vanliga Kotlin-dataklasser utan serialiserarspecifik kod.
LÀmnar JSON-datan min webblÀsare?
Nej. All tolkning och generering körs lokalt pÄ din enhet.
Annons