Sobre o projeto
# Página Inicial do Projeto Jackson
Esta é a página principal do projeto Jackson, uma suíte de ferramentas de processamento de dados para Java e a plataforma JVM. Jackson é amplamente conhecido como "a biblioteca JSON para Java" ou "o melhor parser JSON para Java", mas vai além do JSON para suportar muitos outros formatos de dados.
## Visão Geral
Jackson oferece:
- **Parser/gerador JSON streaming** (jackson-core): API de baixo nível e alto desempenho
- **Data-binding** (jackson-databind): serialização/desserialização de POJOs para/de JSON
- **Anotações** (jackson-annotations): anotações padrão para controlar a serialização
- **Módulos de formato de dados**: suporte a Avro, CBOR, CSV, Ion, Protobuf, Smile, TOML, YAML e mais
- **Módulos de datatype**: suporte a tipos Java 8, Guava, Joda-Time e muitas bibliotecas de terceiros
- **Módulos de linguagem JVM**: Kotlin, Scala e outros
## Versionamento
- **1.x** (`org.codehaus.jackson`): descontinuado, sem novos lançamentos
- **2.x** (`com.fasterxml.jackson.core`): maduro, amplamente usado, com ramos LTS (ex.: 2.18, 2.21)
- **3.x** (`tools.jackson`): em desenvolvimento ativo, recomendado para novos projetos
As versões principais usam pacotes Java e groupIds Maven diferentes, podendo coexistir no mesmo projeto sem conflitos.
## Módulos Centrais
- **jackson-core**: API streaming, implementação específica para JSON
- **jackson-databind**: data-binding e serialização de objetos, depende de streaming e anotações
- **jackson-annotations**: configuração baseada em anotações
- **jackson-bom**: Bill of Materials para gerenciamento consistente de versões
## Módulos de Formato de Dados
Formatos totalmente suportados incluem:
- **Avro**: formato de dados binário com suporte a schema
- **CBOR**: variante binária do JSON
- **CSV**: valores separados por vírgula
- **Ion**: formato binário Amazon Ion
- **Protobuf**: Protocol Buffers
- **Smile**: JSON binário, 100% compatível com a API streaming
- **TOML**: formato de configuração
- **YAML**: formato de dados legível por humanos
Módulos de terceiros adicionam suporte a BEncode, BSON, MessagePack, Rison e mais.
## Módulos de Datatype
Módulos oficiais suportam:
- Tipos Java 8 (Optional, data/hora)
- Coleções Guava
- Joda-Time
- JSON-P (javax.json e jakarta.json)
- Tipos org.json
Módulos comunitários adicionam suporte a VAVR, Apache Commons Lang, Java Money e outros.
## Ferramentas Adicionais
- **Afterburner**: acelera o data-binding em 30-40% via geração de bytecode
- **Mr Bean**: gera classes de implementação em tempo real
- **Geradores de JSON Schema**: criam JSON Schema a partir de POJOs
- **Validadores**: validador de JSON Schema para Java
## Comunidade e Suporte
Jackson é suportado por listas de e-mail, Gitter e issues no GitHub. O projeto aceita contribuições; veja CONTRIBUTING.md para detalhes. Vulnerabilidades de segurança podem ser relatadas de forma privada.
## Atualizações Recentes
- Set 2025: Guia de Migração para Jackson 3 adicionado
- Set 2025: Mudança no esquema de versionamento de jackson-annotations na 2.20
- Fev 2024: Auditoria de segurança em módulos dataformat/datatype
- Dez 2023: Guia de Estilo de Codificação adicionado
Para notas de lançamento completas e status de suporte, veja a página wiki Jackson Releases.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.