Saltar al contenido principal
Z

Convertir POJO a JSON

Convierte una instancia POJO (Plain Old Java Object) de Java a JSON usando Jackson, Gson o Moshi. Fragmentos de código listos para copiar, pegar y ejecutar, además de una herramienta para el proceso inverso cuando necesites reconstruir esa misma clase POJO.

Gratis Sin registro Del lado del cliente Respetuoso con la privacidad Updated
Ten en cuenta: POJO → Convertir a JSON es un proceso que necesita una JVM en ejecución (para que el serializador pueda leer los valores reales de los campos). Las recetas siguientes se ejecutan dentro de tu propia aplicación; esta página es solo una referencia rápida. ¿Necesitas el proceso inverso — pasar de JSON a una clase Java POJO? Usa JSON to Java POJO.

Jackson — el valor por defecto en Spring

Spring Boot ships Jackson by default. ObjectMapper is thread-safe — reuse a single instance.

import com.fasterxml.jackson.databind.ObjectMapper;

private static final ObjectMapper MAPPER = new ObjectMapper();

public static String toJson(Object pojo) throws JsonProcessingException {
    return MAPPER.writeValueAsString(pojo);
}

// Pretty-printed:
String pretty = MAPPER.writerWithDefaultPrettyPrinter().writeValueAsString(pojo);

Annotate fields with @JsonProperty("snake_case") when the JSON field name differs from the Java field. @JsonIgnore skips a field; @JsonInclude(NON_NULL) drops nulls.

Gson — dependencia mínima, ideal para Android

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;

private static final Gson GSON = new GsonBuilder()
    .serializeNulls()              // include null fields
    .setPrettyPrinting()           // optional
    .create();

public static String toJson(Object pojo) {
    return GSON.toJson(pojo);
}

Use @SerializedName("json_field") on a Java field to override the JSON key. Mark fields transient to skip them.

Moshi — pensado para Kotlin, con codegen opcional

import com.squareup.moshi.Moshi;
import com.squareup.moshi.JsonAdapter;

Moshi moshi = new Moshi.Builder().build();
JsonAdapter<User> adapter = moshi.adapter(User.class);

String json = adapter.toJson(user);
// Pretty:
String pretty = adapter.indent("  ").toJson(user);

Cómo se compara Convertir POJO a JSON con otras alternativas

Convertir POJO a JSON frente a las alternativas típicas de navegador y escritorio — comparación rápida de características.
Concern Jackson Gson Moshi
Default in Spring Boot Jackson Jackson
Smallest jar Gson (~280KB) Jackson (3 modules ~2MB)
Kotlin support Moshi (best) Jackson kotlin module Gson (kludgy)
Annotation-free path Jackson + naming strategy Gson + FieldNamingPolicy Moshi reflection adapter
Streaming API JsonGenerator JsonWriter JsonWriter

Preguntas frecuentes

¿Qué biblioteca debería usar para convertir un POJO a JSON?

Con Spring Boot, usa Jackson — ya viene incluida y el resto del stack la espera por defecto. Para Android o CLIs que necesitan pocas dependencias, elige Gson (jar más pequeño) o Moshi (mejor soporte para Kotlin). Las tres manejan el mismo POJO igual de bien; la diferencia está en qué tan bien encajan en tu ecosistema, no en su capacidad de conversión.

¿Cómo renombro un campo en el JSON de salida?

Jackson: <code class="font-mono">@JsonProperty("nombre")</code>. Gson: <code class="font-mono">@SerializedName("nombre")</code>. Moshi: <code class="font-mono">@Json(name = "nombre")</code>. Las tres anotaciones se colocan directamente sobre la declaración del campo.

¿Cómo omito los campos null o vacíos?

Jackson: aplica <code class="font-mono">@JsonInclude(JsonInclude.Include.NON_NULL)</code> a nivel de clase o de campo. Gson: los valores null se omiten por defecto — llama a <code class="font-mono">.serializeNulls()</code> en el builder si quieres conservarlos. Moshi: los valores null también se omiten por defecto, salvo que el adapter se configure con <code class="font-mono">.serializeNulls()</code>.

¿Por qué mi POJO no se serializa y solo muestra un objeto vacío {}?

Jackson necesita getters públicos o un constructor por defecto, junto con campos accesibles. Si usas Lombok, asegúrate de haber aplicado <code class="font-mono">@Getter</code> (o <code class="font-mono">@Data</code>). Con los records (Java 16+), los accessors se generan automáticamente.

¿Se puede convertir un POJO a JSON sin escribir código Java?

No del todo — la serialización a JSON depende de los valores reales que una instancia de Java mantiene en tiempo de ejecución, así que necesitas una JVM funcionando de verdad. Lo que sí puedes hacer sin escribir código es generar el POJO a partir de una muestra JSON con nuestra herramienta <a class="underline" href="/json-to-java">JSON to Java POJO</a>, y luego aplicar las recetas anteriores en tu proyecto.

¿Esta conversión provoca pérdida de datos?

No hay pérdida con los tipos primitivos ni con String. Algunos tipos de Java requieren un adapter específico: <code class="font-mono">LocalDateTime</code> (Jackson: registra el <code class="font-mono">JavaTimeModule</code>), la precisión de <code class="font-mono">BigDecimal</code> (Jackson: <code class="font-mono">USE_BIG_DECIMAL_FOR_FLOATS</code>) y los valores <code class="font-mono">enum</code> (configurables para usar <code class="font-mono">name()</code> u <code class="font-mono">ordinal()</code>).

¿Necesitas el proceso inverso?

Pega una muestra de JSON para obtener una clase Java POJO ya tipada — al estilo Jackson, Lombok o record, con las clases anidadas generadas automáticamente.

Abrir JSON to Java POJO →

¿Qué es Convertir POJO a JSON?

Convertir un POJO a JSON es el proceso de tomar una instancia de Java — un Plain Old Java Object con campos, getters y setters — y serializarla como una cadena JSON. Las bibliotecas estándar para esto son Jackson (`ObjectMapper.writeValueAsString(obj)`), Gson (`new Gson().toJson(obj)`) y Moshi (`moshi.adapter(MyType.class).toJson(obj)`). Cada biblioteca inspecciona los campos del objeto mediante reflexión, aplica las anotaciones presentes (por ejemplo `@JsonProperty`, `@SerializedName`) y genera JSON válido.

Resumen

Convertir POJO a JSON es una utilidad desarrollo gratuita de Zerethon Tools. Convierte una instancia POJO (Plain Old Java Object) de Java a JSON usando Jackson, Gson o Moshi. Fragmentos de código listos para copiar, pegar y ejecutar, además de una herramienta para el proceso inverso cuando necesites reconstruir esa misma clase POJO. Funciona totalmente en el navegador — sin registro, sin subida de archivos.

Categoría
Desarrollo
Precio
Gratis
Privacidad
Basado en el navegador
Registro
No necesario

Privacidad

Tus datos nunca salen de tu navegador, salvo que se indique explícitamente. Convertir POJO a JSON funciona completamente del lado del cliente — sin subida a servidor, sin registro de actividad, sin seguimiento de tu contenido.

Herramientas relacionadas

Crea, comparte y crece en Zerethon Social

Registro gratuito. Gana puntos, colecciona logros y conecta con creadores de todo el mundo.

Prueba Zerethon gratis