跳到主要内容
Z

JSON 转 Java POJO 工具

从 JSON 生成 Java POJO。可选择开启 Jackson、Lombok 注解,或使用 Java 16+ 的 record。嵌套对象会自动生成嵌套类。

免费 无需注册 客户端运行 注重隐私 Updated

使用方法

  1. 1 粘贴一个 JSON 对象或数组(如果是数组,会使用第一个元素)。
  2. 2 为根类命名,并可选择设置包名。
  3. 3 选择注解风格:Jackson、Lombok,或纯 getter/setter。若需要 Java 16+ 的值类型,可开启 record。
  4. 4 复制或下载生成的 <code class="font-mono">.java</code> 文件。

为什么使用此工具

  • 生成一个完整的 POJO(Plain Old Java Object)——包含字段、getter、setter,以及在合适场景下的 equals/hashCode。
  • 自动推断数据类型——判断应为 integer 还是 long、double、boolean 或 String。
  • 嵌套对象会转换为嵌套的静态类;数组会转换为类型明确的 <code class="font-mono">List&lt;&gt;</code>。
  • 可按需开启/关闭注解,以匹配团队的代码风格(Jackson 搭配 Lombok 是常见组合)。
  • 完全在客户端处理——你的 JSON 始终保留在浏览器中,不会上传到任何地方。

常见问题

POJO 是什么,和普通的 Java 类有什么区别?

POJO 是 Plain Old Java Object 的缩写——一个普通的 Java 类,只包含字段和 getter/setter,不需要继承任何超类、实现任何接口,也不依赖框架的注解。从这个意义上说,所有 POJO 本质上都是普通的 Java 类;这个术语强调的是它不带有 Spring、EJB 或持久化层等框架的“负担”。本工具生成的正是这种严格意义上的 POJO。

数字类型是如何推断出来的?

落在 32 位范围内的整数会被转换为 <code class="font-mono">Integer</code>;超出该范围的整数会被转换为 <code class="font-mono">Long</code>;带小数部分的数值会被转换为 <code class="font-mono">Double</code>。

如果我的数组是空的怎么办?

空数组会默认生成为 <code class="font-mono">List&lt;Object&gt;</code>。请至少提供一个示例元素,以便得到准确的类型推断。

应该选择 Jackson、Lombok 还是 record?

当 JSON 中的字段名与 Java 命名规范不符,或与 Java 保留字冲突时,Jackson 的 <code class="font-mono">@JsonProperty</code> 会很有用。Lombok 的 <code class="font-mono">@Data</code> 适合可变(mutable)DTO,能省去大量样板代码。而对于不可变(immutable)的值对象,record(Java 16+)是最佳选择——没有 setter,并自带 <code class="font-mono">equals</code>/<code class="font-mono">hashCode</code>。

可以同时使用 record 和 Lombok 吗?

record 本身就是不可变的值类型——Lombok 的 <code class="font-mono">@Data</code> 在这种情况下已经是多余的了。开启 record 后,Lombok 选项会被自动忽略。

这个工具会在服务器上运行吗?

不会。代码生成完全通过浏览器中的 JavaScript 完成——你的 JSON 永远不会被发送到 Zerethon 的服务器。

需要转换成其他语言怎么办?

JSON 转 TypeScript、Go、C# 的工具已在开发计划中。

什么是 JSON 转 Java POJO 工具?

POJO(Plain Old Java Object)是一个只包含字段、getter 和 setter 的简单 Java 类,不受任何框架的约束限制。这款 JSON 转 POJO 工具会读取一份 JSON 文档,推断每个字段的数据类型(Integer、Long、Double、Boolean、String、List),然后生成一个 Java 类,并可选择附加 Jackson 注解、Lombok 的精简语法或 Java 16+ 的 record 语法——省去你手动逐个映射属性的麻烦。

功能特性

类型推断

将 JSON 值映射为 Integer、Long、Double、Boolean、String 和 List<T>;大于 2^31 的整数会映射为 Long,小数会映射为 Double。

嵌套类

嵌入的对象和对象数组会转换为自动命名的嵌套静态类,数组元素的名称会转换为单数形式。

支持 Jackson、Lombok 与 record

可选择生成 @JsonProperty 注解、Lombok 的 @Data/@NoArgsConstructor/@AllArgsConstructor,或直接生成 Java record 而非普通类。

在浏览器中运行

转换过程是无依赖的客户端 JavaScript;JSON 数据永远不会离开你的设备。

示例

Input

{"id": 42, "name": "Ada Lovelace", "active": true, "roles": ["admin", "dev"]}

Output

import java.util.List;

public class Root {
    private Integer id;
    private String name;
    private Boolean active;
    private List<String> roles;

    public Integer getId() { return id; }
    public void setId(Integer id) { this.id = id; }
    public String getName() { return name; }
    public void setName(String name) { this.name = name; }
    public Boolean getActive() { return active; }
    public void setActive(Boolean active) { this.active = active; }
    public List<String> getRoles() { return roles; }
    public void setRoles(List<String> roles) { this.roles = roles; }
}

常见使用场景

  1. 1

    根据 API 响应快速生成 DTO

    粘贴一段 JSON 样本数据,即可获得一个可直接用于反序列化的 Java 类。

  2. 2

    快速搭建带 Jackson 注解的模型

    当 JSON 键与 Java 命名规范不一致时,生成带 @JsonProperty 注解的字段。

  3. 3

    学习 JSON 到 Java 的类型映射

    了解 JSON 中的数字、布尔值、字符串和嵌套对象是如何映射为 Java 类型的。

概要

Zerethon 的 JSON 转 Java 转换器会读取 JSON 样本并生成带类型的 Java 类,自动推断 Integer、Long、Double、Boolean、String 和 List<T> 等字段类型,并为嵌入的对象自动生成嵌套类。默认情况下,它会输出一个带有私有字段以及 getter 和 setter 的普通 POJO,还可以选择添加 Jackson 的 @JsonProperty 注解、Lombok 的 @Data,或直接生成 Java record。整个转换过程完全在你的浏览器中运行,不会上传任何数据。

分类
开发者
价格
免费
隐私
基于浏览器
注册
无需

参考资料

隐私

除非另有说明,否则你的数据永远不会离开浏览器。JSON 转 Java POJO 工具 完全在客户端运行 — 无需上传服务器,不记录日志,不追踪你输入的内容。

相关工具

在 Zerethon Social 上创作、分享与成长

免费注册。赚取积分,收集成就,与全球创作者建立联系。

免费注册