JSON 转 Kotlin 工具
从 JSON 生成 Kotlin data class 与 Jackson 映射,支持嵌套模型、可空字段和源码下载。
如何生成 Kotlin 模型
粘贴有代表性的 JSON 对象或数组,填写根类型名称后生成。使用文件选择框查看各个源码文件;复制仅复制当前文件,ZIP 下载保留全部文件。完整输出通过映射保留 JSON 原始字段名,包括语言关键字和含标点的键名。
完整输出使用 Jackson 2.x(2.12 及以上)及 Kotlin 模块,需安装匹配版本的 jackson-databind、jackson-module-kotlin。保留 quicktype 包名,或在项目中统一修改。仅模型模式省略 JSON 映射;重命名字段需自行配置序列化规则。生成的 Jackson mapper 在序列化时会省略 null 属性。
样本、可选字段与限制
同类接口存在多种返回结构时,可选择 JSON Lines,每行放一个完整 JSON 文档。部分样本缺少的字段推断为可选字段,显式 null 参与可空类型推断。空数组和始终为 null 的字段无法确定具体类型,应补充代表性样本并核对输出。
数字样式字符串、日期和 UUID 字符串仍按字符串处理。工具根据样本推断模型,不能代替完整接口约定。上限为 200,000 字符、64 层嵌套、50 个样本文档、50 个生成文件及 1,000,000 输出字符。转换在本地 Worker 中运行,可取消,超时为 10 秒。
常见问题
缺失字段和 null 一样吗?
不同。缺失字段表示该字段不一定存在,null 则是一个具体值。目标语言可能通过同一个可选或可空类型表示两者。建议提供多个样本,仅在符合实际接口时启用“所有字段可选”。
会读取远程 Schema 或上传 JSON 吗?
不会。工具仅使用输入的 JSON 样本,不读取其中的网址或远程 Schema,也不会在页面中执行生成的程序。