JAVA

JSON 转 Java Class

生成 Java Record 或 POJO Class、嵌套模型与可选 Jackson 注解

JSON 与数据
🔒 100% 本地运行 — 你的数据不会离开当前页面
由 ToolsKit 编辑团队维护最近更新:2026年8月23日最近复核:2026年8月23日
JSON → Java models

字段可选性根据对象数组中的缺失值和 null 推断;混合类型会降级为通用类型,生成后仍需按真实 API 契约复核。

Java models

生成的 Java models 会显示在这里。

工具说明

JSON 转 Java Class 会把 JSON 对象或代表性对象数组转换为嵌套 Java 模型。可以选择紧凑 Record,或带 Private Field、Getter 和 Setter 的可变 POJO。数组映射为 List,整数和小数映射为 Long 与 Double,布尔值映射为 Boolean,嵌套对象生成命名模型,不兼容混合值降级为 Object。可选 Jackson @JsonProperty 会在 Java 标识符规范化后保留原始 Key。生成器不会推断 Bean Validation、Lombok、日期、BigDecimal、多态、Package 名或框架特定 Nullability,因此应把输出当作可编译草稿,而非最终 API 契约。

场景配方

01

为 Jackson API Client 起草 DTO

目标:在明确选择 Record 或可变 Class 时保留线上字段名

  1. 粘贴代表性对象,并包含缺少可选属性的记录。
  2. 选择 Record 或 POJO,开启 Jackson 注解并设置响应根类型名。
  3. 生成模型后添加 Package 和校验策略,替换通用数字/日期映射,再编译测试。

结果:得到字段名精确、反映已观察可选性的统一 DTO 草稿。

常见问题

可以生成 Java Record 而不是 POJO 吗?

可以,Record 模式更紧凑;Class 模式输出 Private Field、Getter 与 Setter。

为什么使用 Long 和 Boolean 装箱类型?

装箱类型可表达 null,也避免 Record 和 DTO 中基本类型默认值造成歧义。

怎样保留原始 JSON Key?

开启 Jackson 注解后会添加带精确源 Key 的 @JsonProperty。

会生成嵌套模型吗?

会在同一输出中生成关联的顶层模型声明,名称根据属性确定性生成。

能推断 BigDecimal、Instant 或校验注解吗?

不能,数字和字符串语义需要领域知识,应在生成后调整。

样例数据会上传吗?

不会,JSON 解析、样例合并与 Java 源码生成都在本地完成。

继续浏览