共计 827 个字符,预计需要花费 3 分钟才能阅读完成。
前言
有时候在用 go 写一些功能的时候,定义好了 struct,但是在一些地方(比如前端工程或 api 接口数据定义)都需要使用到这个结构体对应的 JSON 数据。
之前找到了一个 goland 的插件:go-struct-to-json,不过好像只支持一级属性,二级的就不支持了。于是乎就自己造轮子,集成到了 油条工具箱,下面来说说具体有哪些用法吧!
使用
例如我们现在有一个结构体,是这样的:
type Account struct {
Id int64
Name string
Age int
Address string
}
如果我们需要转换,打开工具地址:Go 结构体 /JSON 转换 ,然后输入,点击最下方的Go 结构体转 JSON
即可:
最终输出结果为:
{
"Id": 0,
"Name": "",
"Age": 0,
"Address": ""
}
Tag 支持
如果不想以字段名作为 json 字段,那么此工具同样支持 go 语言的 tag 属性,这是我们则需要输入:
type Account struct {
Id int64 `json:"id"`
//...
}
结果为:
{"id": 0}
同理,也支持忽略字段,只需要在 tag 中写入 json:"-"
即可
内嵌结构体支持
此工具也同样支持内嵌结构体,例如:
type Account struct {
Id int64 `json:"id"`
Address struct {
City string `json:"city"`
Street string `json:"street"`
Number int `json:"number"`
} `json:"address"`
}
结果为:
{
"id": 0,
"address": {
"city": "",
"street": "",
"number": 0
}
}
JSON 转结构体
同样,本工具也支持 json 转为 go 的结构体,只需要将 json 代码输入到右侧 json 一栏中,点击下方的 JSON 转 Go 结构体
即可,这里就不过多叙述。
后记
如果大家在使用油条工具箱过程中,有任何建议或问题可以支持在此反馈,希望此工具能够帮助到你!
共计22人点赞,其中2人来自小程序
正文完
使用官方微信小程序体验更多功能