这个项目能做什么

# Jackson 项目主页 这是 Jackson 项目的主要门户页面,Jackson 是一套面向 Java 和 JVM 平台的数据处理工具。Jackson 被广泛称为“Java JSON 库”或“Java 最佳 JSON 解析器”,但其功能超越 JSON,支持许多其他数据格式。 ## 概述 Jackson 提供: - **流式 JSON 解析器/生成器**(jackson-core):底层、高性能 API - **数据绑定**(jackson-databind):POJO 与 JSON 之间的序列化/反序列化 - **注解**(jackson-annotations):用于控制序列化的标准注解 - **数据格式模块**:支持 Avro、CBOR、CSV、Ion、Protobuf、Smile、TOML、YAML 等 - **数据类型模块**:支持 Java 8 类型、Guava、Joda-Time 及许多第三方库 - **JVM 语言模块**:Kotlin、Scala 等 ## 版本管理 - **1.x**(`org.codehaus.jackson`):已弃用,无新版本 - **2.x**(`com.fasterxml.jackson.core`):成熟、广泛使用,具有 LTS 分支(如 2.18、2.21) - **3.x**(`tools.jackson`):积极开发中,推荐用于新项目 主要版本使用不同的 Java 包和 Maven groupId,因此可在同一项目中无冲突地共存。 ## 核心模块 - **jackson-core**:流式 API,JSON 特定实现 - **jackson-databind**:数据绑定和对象序列化,依赖流式和注解 - **jackson-annotations**:基于注解的配置 - **jackson-bom**:用于一致版本管理的物料清单 ## 数据格式模块 完全支持的格式包括: - **Avro**:带模式支持的二进制数据格式 - **CBOR**:二进制 JSON 变体 - **CSV**:逗号分隔值 - **Ion**:Amazon Ion 二进制格式 - **Protobuf**:协议缓冲区 - **Smile**:二进制 JSON,与流式 API 100% 兼容 - **TOML**:配置文件格式 - **YAML**:人类可读的数据格式 第三方模块添加了对 BEncode、BSON、MessagePack、Rison 等的支持。 ## 数据类型模块 官方模块支持: - Java 8 类型(Optional、日期/时间) - Guava 集合 - Joda-Time - JSON-P(javax.json 和 jakarta.json) - org.json 类型 社区模块添加了对 VAVR、Apache Commons Lang、Java Money 等的支持。 ## 其他工具 - **Afterburner**:通过字节码生成将数据绑定速度提高 30-40% - **Mr Bean**:即时生成实现类 - **JSON Schema 生成器**:从 POJO 创建 JSON Schema - **验证器**:Java JSON Schema 验证器 ## 社区与支持 Jackson 通过邮件列表、Gitter 和 GitHub 问题获得支持。项目欢迎贡献;详情见 CONTRIBUTING.md。安全漏洞可私下报告。 ## 近期更新 - 2025 年 9 月:添加 Jackson 3 迁移指南 - 2025 年 9 月:jackson-annotations 2.20 版本方案变更 - 2024 年 2 月:对 dataformat/datatype 模块进行安全审计 - 2023 年 12 月:添加编码风格指南 有关完整发布说明和支持状态,请参阅 Jackson Releases 维基页面。