JSON1

JSON → Clases Java

Convierte JSON en POJOs Java, incluyendo clases anidadas y List<T>. Ideal para maquetar modelos rápidamente.

Visión general

Qué hace

  • • Genera clases Java basadas en los campos
  • • Crea getters/setters para cada campo
  • • Crea clases hijas para objetos anidados

Requisitos de entrada

  • • JSON válido y parseable
  • • Arreglos inferidos por el primer elemento
  • • Ajusta los nombres generados a tu convención

Inicio rápido

  1. Abre /json-to-java
  2. Pega el JSON en el editor izquierdo
  3. Revisa las clases generadas en el panel derecho
  4. Copia o descarga el archivo .java

Mapeo de tipos

Primitivos

  • • string → String
  • • entero → int; flotante → double
  • • boolean → boolean
  • • null → Object

Complejos

  • • array → List<T> (basado en el primer elemento)
  • • object → clase hija (capitalizada)
  • • objeto anidado → clase separada + referencia

Colecciones y clases anidadas

Buen ejemplo

{
  "items": [{ "id": 1, "name": "Book" }]
}

Requiere atención

{
  "values": [1, "two", true]
}

Tipos mixtos; usa Object o normaliza a tipos consistentes.

Ejemplo

JSON de entrada
{
  "id": 1,
  "name": "Book",
  "tags": ["tech"],
  "author": { "name": "Tom" }
}

Generado en Java
public class RootObject {
    private int id;
    private String name;
    private List<String> tags;
    private Author author;

    public int getId() { return id; }
    public void setId(int id) { this.id = id; }
    public String getName() { return name; }
    public void setName(String name) { this.name = name; }
    public List<String> getTags() { return tags; }
    public void setTags(List<String> tags) { this.tags = tags; }
    public Author getAuthor() { return author; }
    public void setAuthor(Author author) { this.author = author; }
}

public class Author {
    private String name;
    public String getName() { return name; }
    public void setName(String name) { this.name = name; }
}

Consejos y limitaciones

Recomendado

  • • Valida el JSON y los nombres de campos
  • • Añade paquetes/anotaciones según sea necesario (p. ej., Lombok)
  • • Renombra clases a nombres de dominio significativos

Limitaciones

  • • Arreglos mixtos inferidos por el primer elemento
  • • Sin gestión de paquetes/imports más allá de List
  • • No se generan anotaciones de serialización

Leer en otro idioma