Golang的序列化

  1. Go中使用encoding/json中的Marshal以及Unmarshal对数据进行序列化和反序列化
  2. json中的key永远为字符串,Golang中一般我们键都为string,value为interface,之后拿到interface采用反射来判断类型,
  3. 序列化的时候首字母必须大写,不然访问不到
  4. 如果希望序列化之后结构体的key有其他别名或者首字母小写,可以加上一个tag

具体的序列化

  1. map序列化之后,Key为json中的key,value也是json中的value
  2. 结构体序列化之后,如果有tag,那么key就是对应的tag

注意:使用Unmarshal()的时候,第2个参数,直接传声明的变量进去即可,因为Golang会自动帮我们分配内存和赋值
例如传入一个只声明的map或结构体

gojson