我是GoLang的初学者 . 我想在整个应用程序中维护一个MongoDB会话 . 我已经看过像在马提尼框架中绑定数据库会话或将其分配给goLang结构的答案 . 但我想要一个直接的方法 .
我'm assuming you'已经有了 mgo 驱动程序:
mgo
go get gopkg.in/mgo.v2
在您的代码中,您可以在 main 函数之外设置一个全局变量,如:
main
var mgoSession *mgo.Session
然后在 init 函数中或在 main 函数中右键启动会话:
init
session, err := mgo.Dial("mongodb://localhost") if err != nil { panic(err) } session.SetMode(mgo.Monotonic, true) mgoSession = session
然后,您可以根据需要在程序的不同函数中克隆会话:
session := mgoSession.Clone() defer session.Close() c := session.DB("databasename").C("collectionname")
1 回答
我'm assuming you'已经有了
mgo
驱动程序:go get gopkg.in/mgo.v2
在您的代码中,您可以在
main
函数之外设置一个全局变量,如:var mgoSession *mgo.Session
然后在
init
函数中或在main
函数中右键启动会话:然后,您可以根据需要在程序的不同函数中克隆会话: