golang 之 bson 與 struct 轉換

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

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 string10     ID   int3211 }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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.