Go語言下與MongoDB通訊 使用mgo

2021-06-18 03:07:04 字數 1128 閱讀 5779

最近寫遊戲服.用的全是新貨.go語言+mongodb.嘿嘿. 關於mgo如何使用就不詳細說了.官網上寫的很清楚.這塊就說說怎麼用.

首先匯入mgo庫.

import (

"labix.org/v2/mgo"

"labix.org/v2/mgo/bson"

)宣告db

var db_dbs *mgo.database

宣告collection

var db_dbuserlist *mgo.collection

連線資料庫

session, err := mgo.dial("127.0.0.1")

選擇use的db

db_dbs = session.db("jltx")

選擇對應的collection

db_dbuserlist = db_dbs.c("userlist")

到此為止.就可以進入表操作了.讀過mongo權威指南的話.您只要會shell的.用mgo給db通訊會很簡單.

bson.m{} 這個東西是整個mgo的明星東東.用來把golang的結構轉bson的東東.

例如: 想找到info表中的所有的資料

infs := dbinfo{}

err = db_dbinfo.find(&bson.m{}).all(&infs)

對應shell應該是:  db.dbinfo.find() 返回所有的資訊

例如:先查詢其中name為enel的所有集合

//查詢使用者

var u dbuser

us := dbuser{}

err := db_dbuserlist.find(&bson.m).all(&us)

對應的shell應該是. db.userlist.find() 返回命中的結合

上面兩個例子就很容易看出 bson.m{} 和 shell寫法的 貫通之處. 用好bson.m{}就能用好mongodb了.

下面說一下insert操作.

你可以在go裡面任意建立struct來.往裡面插入.非常的簡單.

u = dbuser

db_dbuserlist.insert(&u)

go語言下redis部署和操作

redis是基於c語言編寫的開源資料庫,支援key value的持久化儲存。redis支援多種資料型別,value值可以是字串 鍊錶 集合和雜湊型別。redis支援push pop add remove及去交集並集差集等的複雜操作。redis最大的優勢是讀取效能高,redis的資料快取在記憶體中,所...

go語言連線mongodb資料庫

命令列下輸入 go get gopkg.in mgo.v2 2 引入mongodb包 import gopkg.in mgo.v2 gopkg.in mgo.v2 bson 3 完整 packagemain import gopkg.in mgo.v2 gopkg.in mgo.v2 bson fm...

go語言串列埠通訊的實現

命令列輸入命令 然後就可以在go 中匯入如下包 github.com tarm goserial第二步 串列埠通訊 實現 發命令之前清空緩衝區 num,err iorwc.read buffer if err nil 發命令資料型別為byte num,err iorwc.write byte at ...