0

我正在尝试使用适用于 Scala 的 Casbah MongoDB 工具包。我在本地主机上运行 MongoDB,它工作正常。然而,下面的代码什么也没做——没有创建数据库和集合。也没有抛出异常:

package test.scalamongo

import com.mongodb.casbah.Imports._

object Simple {

  def main(args: Array[String]): Unit = {
try {
  // Connect to default - localhost, 27017
  val mongoClient = MongoClient()
  val mongoDB = mongoClient("casbah_test")
  val mongoColl = mongoClient("casbah_test")("test_data")
  println("Ok now?")
} catch {
  case e: Throwable =>
    println("Exception !!!")
    e.printStackTrace()
}
  }

}

我错过了什么?谢谢!

4

1 回答 1

0

您必须显式创建集合:

val mongoClient = MongoClient()
val mongoDB = mongoClient("casbah_test")
val mongoColl = 
   if (mongoDB.collectionExists("test_data")) {
     mongoDB("test_data")
   } else mongoDB.createCollection("test_data", options: DBObject)

可能的选项:

capped - boolean:如果集合有上限
size - int:集合大小
max - int:最大文档数

于 2013-03-21T21:08:28.937 回答