Geradores e estruturas de código

JSON para Java

Infira classes Java a partir de JSON e escolha campos públicos ou métodos de acesso adicionais.

Entrada JSON

Código gerado

Converta JSON em classes Java, combine os campos dos arrays e gere tipos aninhados e os imports necessários.

O JSON e o código Java são processados apenas no navegador, sem envios, execução ou gravação automática.

Sobre esta ferramenta

O conversor gera estruturas Java para desenvolvimento posterior, sem introduzir por predefinição uma biblioteca de mapeamento JSON. Os objetos aninhados são representados por classes e os arrays por List. Os tipos numéricos são inferidos em conjunto a partir de todas as amostras.

Como utilizar

  1. Cole um objeto JSON, um array ou outro valor raiz válido.
  2. Defina o nome da classe raiz e escolha apenas campos ou getters/setters.
  3. Clique em «Converter» e verifique Long, Double, referências anuláveis e classes aninhadas.
  4. Copie o código ou descarregue um ficheiro .java cujo nome corresponda à classe raiz public.

Exemplos

  • [{"value":1},{"value":2.5}]: value é combinado como Double, sem ficar limitado ao inteiro da primeira amostra.
  • {"matrix":[[1,2],[3,4]]}: gera List<List<Long>> e importa List quando necessário.
  • {"first-name":"Ana","class":"A"}: cria nomes de campo válidos e preserva as chaves originais em comentários seguros.

Regras de conversão de tipos

Os inteiros usam Long; os decimais e misturas numéricas, Double; as cadeias, String; os booleanos, Boolean. Valores apenas null ou misturas incompatíveis usam Object; arrays vazios usam List<Object>. Os campos opcionais ou anuláveis são representados por tipos de referência. Só são gerados os imports utilizados, evitando nomes repetidos, palavras reservadas e tipos incorporados. Os comentários sobre nomes alterados documentam a chave, mas não criam mapeamento de desserialização. Jackson/Gson não são obrigatórios. Entrada e saída: até 1 MiB cada; 64 níveis, 100000 nós, 5000 campos combinados e 256 tipos. Inteiros não seguros, números não finitos e valores arredondados para zero por subfluxo originam um erro. Os restantes decimais dependem da precisão de vírgula flutuante do navegador.

Utilizações comuns

  • Preparar rapidamente classes de transferência de dados em Java.
  • Organizar arrays de objetos em classes aninhadas e listas.
  • Verificar variações de tipos numéricos entre amostras.

Privacidade

O JSON e o código Java são processados apenas no navegador, sem envios, execução ou gravação automática.

Se quiser guardar os resultados, copie-os ou descarregue-os antes de sair da página.

Perguntas frequentes

Como é convertido um number de JSON?

Os inteiros são normalmente convertidos em Long e os decimais ou misturas numéricas em Double. Misturas de tipo incerto podem usar Object.

Tenho de instalar Jackson?

Não. O código predefinido usa apenas a biblioteca padrão de Java e não acrescenta anotações obrigatórias de terceiros.

Um campo renomeado fica automaticamente associado ao JSON original?

Não. O comentário preserva a chave para verificação. É necessário configurar o mapeamento na biblioteca de desserialização escolhida ou no código da aplicação.

Como são representados null e os campos opcionais?

Através de referências anuláveis. A aplicação deve definir como distinguir durante a execução um campo ausente de um campo explicitamente null.

Posso descarregar e compilar diretamente?

O nome do ficheiro corresponde à classe raiz e são incluídos os imports e tipos aninhados necessários. Convém compilar e rever de acordo com a versão de Java e as convenções do projeto.

Voltar ao diretório de ferramentas