Sobre el proyecto
# Página Principal del Proyecto Jackson
Esta es la página principal del proyecto Jackson, un conjunto de herramientas de procesamiento de datos para Java y la plataforma JVM. Jackson es ampliamente conocido como "la biblioteca JSON para Java" o "el mejor analizador JSON para Java", pero va más allá de JSON para soportar muchos otros formatos de datos.
## Resumen
Jackson proporciona:
- **Analizador/generador JSON en streaming** (jackson-core): API de bajo nivel y alto rendimiento
- **Data-binding** (jackson-databind): serialización/deserialización de POJOs a/desde JSON
- **Anotaciones** (jackson-annotations): anotaciones estándar para controlar la serialización
- **Módulos de formato de datos**: soporte para Avro, CBOR, CSV, Ion, Protobuf, Smile, TOML, YAML y más
- **Módulos de tipos de datos**: soporte para tipos de Java 8, Guava, Joda-Time y muchas bibliotecas de terceros
- **Módulos de lenguajes JVM**: Kotlin, Scala y otros
## Versionado
- **1.x** (`org.codehaus.jackson`): obsoleta, sin nuevos lanzamientos
- **2.x** (`com.fasterxml.jackson.core`): madura, ampliamente utilizada, con ramas LTS (por ejemplo, 2.18, 2.21)
- **3.x** (`tools.jackson`): en desarrollo activo, recomendada para nuevos proyectos
Las versiones principales usan diferentes paquetes de Java y groupIds de Maven, por lo que pueden coexistir en el mismo proyecto sin conflictos.
## Módulos Centrales
- **jackson-core**: API de streaming, implementación específica de JSON
- **jackson-databind**: data-binding y serialización de objetos, depende de streaming y anotaciones
- **jackson-annotations**: configuración basada en anotaciones
- **jackson-bom**: Bill of Materials para gestión de versiones consistente
## Módulos de Formato de Datos
Los formatos totalmente soportados incluyen:
- **Avro**: formato de datos binario con soporte de esquemas
- **CBOR**: variante binaria de JSON
- **CSV**: valores separados por comas
- **Ion**: formato binario de Amazon Ion
- **Protobuf**: Protocol Buffers
- **Smile**: JSON binario, 100% compatible con la API de streaming
- **TOML**: formato de configuración
- **YAML**: formato de datos legible por humanos
Los módulos de terceros añaden soporte para BEncode, BSON, MessagePack, Rison y más.
## Módulos de Tipos de Datos
Los módulos oficiales soportan:
- Tipos de Java 8 (Optional, fecha/hora)
- Colecciones de Guava
- Joda-Time
- JSON-P (javax.json y jakarta.json)
- Tipos de org.json
Los módulos comunitarios añaden soporte para VAVR, Apache Commons Lang, Java Money y otros.
## Herramientas Adicionales
- **Afterburner**: acelera el data-binding en un 30-40% mediante generación de bytecode
- **Mr Bean**: genera clases de implementación sobre la marcha
- **Generadores de JSON Schema**: crean JSON Schema a partir de POJOs
- **Validadores**: validador de JSON Schema para Java
## Comunidad y Soporte
Jackson se soporta a través de listas de correo, Gitter y problemas de GitHub. El proyecto agradece contribuciones; consulte CONTRIBUTING.md para más detalles. Las vulnerabilidades de seguridad se pueden reportar de forma privada.
## Actualizaciones Recientes
- Sep 2025: Guía de migración a Jackson 3 añadida
- Sep 2025: Cambio en el esquema de versiones de jackson-annotations en 2.20
- Feb 2024: Auditoría de seguridad en módulos de formato/tipos de datos
- Dic 2023: Guía de estilo de codificación añadida
Para notas de lanzamiento completas y estado de soporte, consulte la página wiki de Jackson Releases.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.