🐹

JSON转Go结构体

根据 JSON 数据自动生成 Go 语言的结构体(struct),支持嵌套、数组、可选字段,自动生成 JSON tag。

JSON 转 Go 结构体

JSON 转 Go 结构体工具使用指南

📌 简介

JSON 转 Go 结构体工具是一款面向 Go 语言开发者的在线工具,可以根据 JSON 数据自动生成 Go 语言的结构体(struct)定义。支持嵌套对象、数组、可选字段(omitempty)识别,并自动生成 JSON tag,让您无需手动编写繁琐的类型定义。在处理 REST API 响应、配置文件、数据结构解析等场景中非常实用。

📖 Go 结构体与 JSON 的对应

Go 语言中处理 JSON 数据需要用到 struct 类型,通过 encoding/json 包进行序列化和反序列化。struct 字段必须导出(首字母大写)才能被 JSON 包处理,同时使用 tag 说明映射关系,例如 Name string `json:"name"`。JSON 中的字段名通常是蛇形命名(user_name),而 Go 的惯例是驼峰命名(UserName),需要正确转换。本工具会自动完成这些映射,让您专注于业务逻辑。

💼 常见应用场景

⚙️ 使用步骤

  1. 将 JSON 数据粘贴到左侧输入框。
  2. 设置根结构体名称(默认 Root)。
  3. 选择是否生成 JSON tag,是否添加 omitempty。
  4. 右侧会实时生成 Go 结构体代码。
  5. 点击"复制代码"粘贴到 .go 文件中使用。

⚠️ 注意事项

❓ 常见问题 (FAQ)

Q: 为什么字段名首字母大写?

A: Go 语言中,只有首字母大写的字段才能被外部包访问(包括 encoding/json 包)。因此生成的 struct 字段名都是大驼峰命名。

Q: 支持 null 值吗?

A: 支持。null 值会推断为 interface{} 类型。如需更精确的类型(如 *string),请手动调整。

Q: 数据会上传吗?

A: 不会。所有转换在浏览器本地完成,JSON 数据不会离开您的设备。