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