分享
golang 之 bson 与 struct 转换
chuanheng · · 21987 次点击 · · 开始浏览这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。
bson的介绍不说了
golang下的解析包找到2个 一个是mongo的http://labix.org/gobson
,另外一个比较小众https://github.com/sbunce/bson
这里用的是mongo的作为例子。
对象加上不同的注解,
可以轻松转成xml json bson 想想都兴奋
1 package main 2 3 import ( 4 "fmt" 5 "labix.org/v2/mgo/bson" 6 ) 7 8 type TestStruct struct { 9 Name string 10 ID int32 11 } 12 13 func main() { 14 fmt.Println("start") 15 data, err := bson.Marshal(&TestStruct{Name: "Bob"}) 16 if err != nil { 17 panic(err) 18 } 19 fmt.Println("%q", data) 20 21 value := TestStruct{} 22 err2 := bson.Unmarshal(data, &value) 23 if err2 != nil { 24 panic(err) 25 } 26 fmt.Println("value:", value) 27 28 mmap := bson.M{} 29 err3 := bson.Unmarshal(data, mmap) 30 if err3 != nil { 31 panic(err) 32 } 33 fmt.Println("mmap:", mmap) 34 }
转载自 http://www.blogjava.net/oathleo/archive/2013/09/22/golang_bson_struct_mongo.html
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信21987 次点击
上一篇:golang语言部分保留字的举例
添加一条新回复
(您需要 后才能回复 没有账号 ?)
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
bson的介绍不说了
golang下的解析包找到2个 一个是mongo的http://labix.org/gobson
,另外一个比较小众https://github.com/sbunce/bson
这里用的是mongo的作为例子。
对象加上不同的注解,
可以轻松转成xml json bson 想想都兴奋
1 package main 2 3 import ( 4 "fmt" 5 "labix.org/v2/mgo/bson" 6 ) 7 8 type TestStruct struct { 9 Name string 10 ID int32 11 } 12 13 func main() { 14 fmt.Println("start") 15 data, err := bson.Marshal(&TestStruct{Name: "Bob"}) 16 if err != nil { 17 panic(err) 18 } 19 fmt.Println("%q", data) 20 21 value := TestStruct{} 22 err2 := bson.Unmarshal(data, &value) 23 if err2 != nil { 24 panic(err) 25 } 26 fmt.Println("value:", value) 27 28 mmap := bson.M{} 29 err3 := bson.Unmarshal(data, mmap) 30 if err3 != nil { 31 panic(err) 32 } 33 fmt.Println("mmap:", mmap) 34 }
转载自 http://www.blogjava.net/oathleo/archive/2013/09/22/golang_bson_struct_mongo.html