在线JSON转Go Struct | 根据JSON自动生成Golang结构体 - GoTool在线工具集

开发工具指南

在线JSON转Go Struct工具。支持多层复杂嵌套JSON解析,一键生成规范的Golang结构体代码。具备自动注入GORM/JSON等多重Tag标签及语法错误高亮功能,大幅缩短Go语言开发编码时间。

使用说明

功能介绍

1.支持解析嵌套 json 串, 根据递归进行解析嵌套对象
2.支持解析数组 json 串, 会取数组中第一个 json 串进行解析 3.支持注入自定义 tag
4.检查 json 串格式是否正确, 输出错误的位置
5.支持按行解析注释

示例

解析嵌套 json 串

{
    "name": "test", // 姓名
    "age": 10, // 年龄
    "addr": "四川成都", // 地址
    "cls_info": [ // 班级
        {
            "name": "篮球班", // 班名
            "teacher": "张老师" // 老师
        },
        {
            "name": "美术班", // 班名
            "teacher": "李老师" // 老师
        }
    ]
}

处理后

type ClsInfo struct {
    Name string `json:"name"` // 班名
    Teacher string `json:"teacher"` // 老师
}


type GenerateObj struct {
    Name string `json:"name"` // 姓名
    Age int `json:"age"` // 年龄
    Addr string `json:"addr"` // 地址
    ClsInfo []ClsInfo `json:"cls_info"` // 班级
}

直接解析数组 json 串

[
	{
		"name": "test",
		"age": 10,
		"addr": "四川成都",
		"cls_info": [
			{
				"name": "篮球班",
				"teacher": "张老师"
			},
			{
				"name": "美术班",
				"teacher": "李老师"
			}
		]
	},
	{
		"name": "test2",
		"age": 10,
		"addr": "四川成都",
		"cls_info": [
			{
				"name": "篮球班",
				"teacher": "张老师"
			},
			{
				"name": "美术班",
				"teacher": "李老师"
			}
		]
	}
]

处理后

type GenerateStruct struct {
    Name string `json:"name,omitempty"`
    Age int `json:"age,omitempty"`
    Addr string `json:"addr,omitempty"`
    ClsInfo []ClsInfo `json:"cls_info,omitempty"`
}

type ClsInfo struct {
    Name string `json:"name,omitempty"`
    Teacher string `json:"teacher,omitempty"`
}