风中的 FAQ-2

我就是小政政 · · 489 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

51.go modules依赖管理
  • 简介
    一般从GOPATH、vendor文件夹下寻找依赖包。使用该功能后根据go.mod文件中的记录下载依赖。
go.mod中使用//作为注释
module:定义当前模块和包路径
require:定义依赖的模块和版本
exclude:排除特定模块和版本的使用
replace:模块源的替换
使用 go get xxx会自动将依赖模块添加到go.mod文件中
网络访问不了golang.org/x等谷歌扩展包,可以使用replace
    replace (
            golang.org/x/crypto => github.com/golang/crypto latest
            golang.org/x/sys => github.com/golang/sys latest
    )
  • go mod 命令:go mod <命令> [可选参数]
    初始化目录:go mod init
    更新整理依赖:go mod tidy 更新无用模块、添加确实模块
    将依赖复制到vender文件夹下:go mod vendor
    验证模块是否正确:go mod verify
    下载指定名称的模块到本地缓存中:go mod download
    命令行编辑:go mod edit
    解释为什么需要这个模块:go mod why
52.golang中使用json

序列化

支持:string、bool、数字类型、数组和切片、结构体、map
不支持:channel、complex、function类型,结构体中的循环数据结构

结构体中自定义字段名称

`json:"name,string"` 表示序列化时字段转换为name,类型为string
`json:"age,omitempty"`omitempty忽略空值,当为空值时不序列化
`json:"-"`始终忽略
  • 使用标准库内建JSON包
    Marshal:序列化为JSON
    Unmarshal:JSON反序列化为结构体

有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:我就是小政政

查看原文:风中的 FAQ-2

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

489 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传