DT Dev Tools

Converter JSON para Kotlin — Gerador de data classes

Converta JSON em data classes Kotlin para kotlinx.serialization, Jackson ou Klaxon, com tipos anuláveis e classes aninhadas. Grátis, rápido e privado.

🔒 Executa completamente no seu navegador — nada é enviado

Publicidade

Data classes Kotlin a partir de um exemplo de JSON

As data classes do Kotlin combinam naturalmente com payloads JSON, mas digitá-las para uma resposta grande — principalmente no Android, onde cada tela parece chamar outro endpoint — é cansativo. Este conversor de JSON para Kotlin as gera a partir de um exemplo. Cada objeto vira uma data class com propriedades val, as chaves são convertidas para camelCase com anotações que preservam os nomes JSON originais, objetos aninhados viram classes próprias e arrays viram List<T>. Campos ausentes ou null em alguns exemplos tornam-se tipos anuláveis, e assim você tem a null-safety do Kotlin exatamente nas propriedades que precisam dela.

A inferência de tipos vem do quicktype, que mescla todos os elementos de cada array. Campos opcionais que aparecem em poucos itens ainda são capturados, o que evita falhas em tempo de execução quando o desserializador encontra uma chave que o modelo desconhece.

kotlinx.serialization, Jackson ou Klaxon

A saída padrão usa kotlinx.serialization, a biblioteca multiplataforma da JetBrains: as classes recebem @Serializable e as chaves, @SerialName. Projetos de servidor baseados em Spring costumam preferir o Jackson, que gera anotações @JsonProperty e um auxiliar ObjectMapper. O Klaxon é uma alternativa leve que alguns projetos Android ainda usam. Se você pretende configurar a serialização por conta própria, marque Data classes only. Defina o nome do pacote para que o arquivo compile no lugar.

Dicas para modelos Kotlin limpos

Dê ao conversor um exemplo completo — vários itens no array, campos opcionais preenchidos, objetos aninhados não vazios — para que a nulidade e os tipos sejam inferidos corretamente. Renomeie a classe raiz para o nome do seu domínio antes de baixar. Depois, considere trocar strings de valores conhecidos por tipos enum class, usar Instant ou LocalDate onde seu serializador oferecer suporte e adicionar valores padrão para campos que sua API omite. A geração roda inteiramente no navegador, então não há problema em colar respostas reais capturadas durante a depuração.

Como usar

  1. Cole o JSONCole um objeto ou array JSON, ou carregue o exemplo.
  2. Escolha um serializadorSelecione kotlinx.serialization, Jackson ou Klaxon e defina o pacote.
  3. Copie as data classesCopie o código Kotlin ou baixe-o como arquivo .kt.

Perguntas frequentes

Quais bibliotecas de serialização são suportadas?
kotlinx.serialization (o padrão), Jackson e Klaxon. Cada uma gera as anotações e o código auxiliar corretos para a biblioteca.
Como os campos anuláveis são tipados?
Campos nulos ou ausentes em alguns exemplos são declarados com um tipo anulável, como String?, e valor padrão null.
Posso obter data classes sem anotações?
Sim. Marque Data classes only para gerar data classes Kotlin simples, sem código específico de serializador.
O JSON sai do meu navegador?
Não. Toda a análise e geração rodam localmente no seu dispositivo.
Publicidade