使用Casbah API关闭Mongodb的连接

时间:2012-02-15 11:25:41

标签: scala mongodb casbah

我没有得到任何关于“如何使用casbah API关闭mongodb连接”的有用信息。实际上,我已经定义了多种方法,并且在每种方法中我都需要与mongodb建立连接。工作之后我也需要关闭它。我正在使用Scala。

其中一个方法(scala中的代码示例):

import com.mongodb.casbah.Imports._
import com.mongodb.casbah.MongoConnection

def index ={
  val mongoConn = MongoConnection(configuration("hostname"))
  val log = mongoConn("ab")("log")
  val cursor = log.find()
  val data = for {x <- cursor} yield x.getAs[BasicDBObject]("message").get
  html.index(data.toList)
  //mongoConn.close()  <-- here i want to close the connection but this .close() is not working
}

2 个答案:

答案 0 :(得分:2)

目前还不清楚,你的问题为什么确切关闭不起作用。它会抛出一些异常,它不编译,或者没有效果? 但由于MongoConnectioncom.mongodb.Mongo上的瘦包装,因此您可以直接使用底层Mongo,就像普通的旧Java驱动程序一样:

val mongoConn = MongoConnection(configuration("hostname"))
mongoConn.underlying.close()

实际上,这就是casbah中的is implemented。{/ p>

答案 1 :(得分:0)

请尝试使用.close。如果某个函数在scala中没有参数,则sometimes之后不会使用括号。

编辑:我的信息错误,编辑后包含正确的信息+链接。