JSON para Kotlin Data Class

Converte dados JSON em data classes Kotlin com anotações @SerializedName, tratamento de nulos e inferência de tipos aninhados

Fatos principais

Categoria
Desenvolvimento e Web
Tipos de entrada
textarea, text, checkbox
Tipo de saída
text
Cobertura de amostras
4
API disponível
Yes

Visão geral

O conversor de JSON para Kotlin Data Class permite gerar rapidamente classes de dados Kotlin a partir de estruturas JSON. Ele infere automaticamente tipos de dados, trata objetos aninhados e adiciona anotações @SerializedName para facilitar a serialização e desserialização em projetos Android e Kotlin.

Quando usar

  • Ao integrar APIs REST que retornam respostas JSON em aplicativos Android ou backend escritos em Kotlin.
  • Quando você precisa criar modelos de dados tipados rapidamente sem escrever manualmente dezenas de classes e propriedades.
  • Ao configurar a desserialização de JSON com bibliotecas como Gson ou Moshi que exigem mapeamento de chaves.

Como funciona

  • Insira ou cole o código JSON que você deseja converter no campo de entrada principal.
  • Defina o nome da classe raiz e escolha se deseja que as propriedades sejam geradas como anuláveis (nullable).
  • O conversor analisa a estrutura do JSON, infere os tipos de dados e gera as classes de dados Kotlin correspondentes com as anotações @SerializedName.

Casos de uso

Criação rápida de modelos de dados para consumo de APIs REST no Android Studio.
Mapeamento de payloads de webhooks complexos para processamento em microsserviços Kotlin.
Geração de classes de configuração a partir de arquivos JSON locais para inicialização de sistemas.

Exemplos

1. Mapeamento de Perfil de Usuário

Desenvolvedor Android
Contexto
Um desenvolvedor precisa consumir um endpoint de perfil de usuário que retorna dados pessoais e um endereço aninhado.
Problema
Escrever manualmente a classe de dados principal e a classe de endereço com anotações de serialização consome muito tempo.
Como usar
Insira o JSON do perfil do usuário, defina o nome da classe raiz como 'UserProfile' e ative a opção de propriedades anuláveis.
Configuração de exemplo
jsonInput: {"id": 123, "name": "Carlos", "address": {"street": "Av. Paulista", "number": 1000}}, rootName: UserProfile, optionalFields: true
Resultado
O conversor gera as classes 'UserProfile' e 'Address' com propriedades anuláveis e anotações @SerializedName prontas para uso.

2. Conversão de Resposta de API de Clima

Engenheiro de Software
Contexto
Uma API de previsão do tempo retorna um JSON com arrays de temperaturas e informações meteorológicas.
Problema
Mapear a estrutura de arrays e tipos numéricos mistos sem errar a tipagem do Kotlin.
Como usar
Cole o JSON de resposta da API de clima no campo de entrada e defina o nome da classe raiz como 'WeatherResponse'.
Configuração de exemplo
jsonInput: {"city": "Lisboa", "temperatures": [15.5, 18.0, 12.2], "forecast": {"main": "Rain"}}, rootName: WeatherResponse, optionalFields: false
Resultado
Geração imediata da classe 'WeatherResponse' contendo uma lista de Double e a classe interna 'Forecast' com tipos não-nulos.

Testar com amostras

json

Hubs relacionados

FAQ

Como o conversor lida com objetos JSON aninhados?

Ele cria automaticamente classes de dados Kotlin separadas para cada objeto aninhado encontrado na estrutura do JSON.

O que faz a opção de propriedades anuláveis?

Quando ativada, ela define os tipos das propriedades como opcionais (ex: String?), permitindo que o Kotlin trate valores nulos com segurança.

Posso alterar o nome da classe principal gerada?

Sim, basta preencher o campo 'Nome do tipo raiz' com o nome desejado antes de realizar a conversão.

O conversor adiciona anotações para serialização?

Sim, ele inclui a anotação @SerializedName para garantir que o mapeamento das chaves do JSON funcione mesmo após a ofuscação do código.

Quais tipos de dados são inferidos pelo conversor?

Ele infere tipos básicos como String, Int, Double, Boolean, além de listas (List) e objetos personalizados.

Documentação da API

Ponto final da solicitação

POST /pt/api/tools/json-to-kotlin

Parâmetros da solicitação

Nome do parâmetro Tipo Requerido Descrição
jsonInput textarea Sim -
rootName text Não -
optionalFields checkbox Não -

Formato de resposta

{
  "result": "Processed text content",
  "error": "Error message (optional)",
  "message": "Notification message (optional)",
  "metadata": {
    "key": "value"
  }
}
Texto: Texto

Documentação de MCP

Adicione este ferramenta à sua configuração de servidor MCP:

{
  "mcpServers": {
    "elysiatools-json-to-kotlin": {
      "name": "json-to-kotlin",
      "description": "Converte dados JSON em data classes Kotlin com anotações @SerializedName, tratamento de nulos e inferência de tipos aninhados",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=json-to-kotlin",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

Você pode encadear várias ferramentas, ex: `https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`, máx 20 ferramentas.

Se você encontrar algum problema, por favor, entre em contato conosco em [email protected]