我是 GoLang 的初学者。我想在整个应用程序中维护一个 MongoDB session 。我已经看到了答案,例如在 martini 框架中绑定(bind)数据库 session 或将其分配给 goLang 结构。但我想要一个直接的方法。

请您参考如下方法:

我假设您已经安装了 mgo 驱动程序:

去获取 gopkg.in/mgo.v2

在您的代码中,您可以在 main 函数之外设置一个全局变量,例如:

var mgoSession *mgo.Session

然后在 init 函数中或在 main 函数中启动 session :

session, err := mgo.Dial("mongodb://localhost") 
if err != nil { 
    panic(err) 
} 
session.SetMode(mgo.Monotonic, true) 
mgoSession = session 

然后您可以根据需要在程序的不同函数中克隆 session :

session := mgoSession.Clone() 
defer session.Close() 
c := session.DB("databasename").C("collectionname") 


评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!