无需登录 数据私有 本地保存

JSON 转 Java 实体类生成器 - 自动创建 POJO

12
0
0
0

JSON 转 Java 实体类

自动解析JSON结构,生成POJO / DTO实体类代码

支持 Lombok & Jackson
快速体验:
生成的 Java 代码 0 个类
等待生成...
在左侧输入JSON并点击生成
常见问题与知识点

@Data 是 Lombok 提供的组合注解,自动生成 getter/setter、toString()、equals()、hashCode() 以及 RequiredArgsConstructor,大幅减少样板代码。结合 @AllArgsConstructor@Builder,可以让实体类简洁且功能齐全。注意:如果项目中未引入 Lombok,请取消勾选此选项。

当 JSON 字段名与 Java 字段名不一致时必须添加。例如 JSON 使用下划线命名(如 first_name),Java 使用驼峰命名(firstName)。本工具会自动检测并添加 @JsonProperty("first_name")。此外,如果 JSON 字段名包含 Java 不支持的字符,也需要该注解来映射。

本工具将嵌套 JSON 对象生成为静态内部类(static class),类名采用父类名+字段名(PascalCase)组合,保证唯一性。例如 JSON 中的 {"address": {"city": "北京"}} 会生成 RootEntityAddress 内部类。多层嵌套会逐级生成嵌套的内部类。

数组字段统一生成 java.util.List<T> 类型。工具会分析数组第一个非空元素来确定泛型类型:对象数组生成对应的内部类,字符串数组生成 List<String>,数字数组生成 List<Integer>List<Double>空数组默认生成 List<Object>

推荐使用包装类型(Integer、Double、Boolean等),因为 JSON 中的字段可能为 null,包装类型可以正确表示缺失值而不会抛出 NullPointerException。如果确定字段永远不会为 null(例如数据库主键),可以使用基本类型来避免不必要的装箱开销。本工具默认生成包装类型。

如果启用了全部选项,需要在项目中引入:
Lombokorg.projectlombok:lombok(或 Gradle 对应依赖)
Jacksoncom.fasterxml.jackson.core:jackson-databind
Java 8+:日期类型(LocalDate/LocalDateTime)为 JDK 内置,无需额外依赖。