【问题标题】:What datatype is returned by MongoCollection.find()?MongoCollection.find() 返回什么数据类型?
【发布时间】:2017-03-27 12:32:00
【问题描述】:

我是 mongodb 和 scala 的新手,我目前正在使用 Casbah 作为我的驱动程序,以便在 play 框架上连接这两者。我不知道什么数据类型 由 collection.find() 返回。我正在尝试创建一个返回 collection.find() 结果的函数,我需要指定返回类型。

文档和我的 IDE 相互矛盾。示例:

val collection = MongoClient("localhost", 27017)("databaseName")("collectionName")

我相信上面的集合是 MongoCollection。但是返回的是什么数据类型

collection.find() 

我正在尝试编写以下内容:

  def getAllDocumentsInCollection(collectionName:String):  DBCursor = {
    val collection = getCollection(collectionName)
    collection.find()
  }

编译器在上面说返回类型是collection.CursoryType,但我不知道如何找到collection.CursorType。 import collection.CursorType 不起作用。

“Scala for Data science”一书中的文档说是,collection.find() 返回 collection.CursoryType,但由于我上面所述的原因,它不能编译,而来自 Casbah 的文档说它的类型是 DBCursor,但事实并非如此'不编译,因为我的 IDE 说它的类型为 collection.CursorType。我在这里转圈……

卡斯巴文档 http://api.mongodb.com/scala/casbah/2.1.2/scaladoc/com/mongodb/casbah/MongoCollection.html

Scala For Mongo Doc https://books.google.com/books?id=NV8dDAAAQBAJ&pg=PA178&lpg=PA178&dq=type+collection.CursorType+scala&source=bl&ots=nx0tnnUw3z&sig=3BNzcU_46VBdl7hv1f-C0SELAY4&hl=en&sa=X&ved=0ahUKEwjmhoiC0abQAhVI8IMKHQeEAgsQ6AEIGzAA#v=onepage&q=type%20collection.CursorType%20scala&f=false

Scala 版本: 2.11.17

卡斯巴版本: 3.1.1

我正在通过激活器运行 play 和 scala。

【问题讨论】:

  • 在我内心深处,我知道 Scala 的魔力在起作用。

标签: mongodb scala casbah


【解决方案1】:

你使用什么版本的 scala?看来,你用的casbah太旧了,如果可以的话最好更新一下。我什至不能find casbash in maven repository

【讨论】:

  • scala 2.11.17 和 casbah 3.1.1
  • 所以,看起来它返回 MongoCursor:val findAll: MongoCursor = collection.find()
猜你喜欢
  • 2019-02-07
  • 2013-07-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-18
相关资源
最近更新 更多