2010-09-18 59 views
2

我可以用来执行CRUD操作的方法/驱动程序是什么? ATM,我只有用创建函数成功,即使用mongoDB在Scala中执行CRUD操作的方法

DBObbject.put("field","value") 

常识表明find()方法应该代表检索,但使用它提供了以下错误

value find is not a member of com.mongodb.BasicDBObject 

所有和任何帮助表示赞赏。

编辑#1:

我也能够进行检索,但我检索整个文档,而不是一个具体的领域。

var mongo = new Mongo() 
var databaseName = mongo.getDB("DBName") 
var collectionName = databaseName.getCollection("namecollection") 
var testdbObject = new BasicDBObject() 

testdbObject.put("userId", "5678") 
var cursor = collectionName.find(testdbObject) 

println(cursor.next()) 

编辑#2:基于字段的检索。国际海事组织,可以把内部循环和打印全部。没有尝试过循环的事情。

var result = collectionName.findOne() 
println(result.get("userId").toString) 

谢谢。

回答

2

为了编程公众的利益:CRD操作。

创建操作:

def addToMongo(): Unit = {  
     dbObject.put("name", "mongo") 
     dbObject.put("type", "db")   
     collectionName.insert(dbObject) 
    } 

检索操作:

def retrieveMongo(): Unit = {  
    var result = collectionName.findOne() 
    println(result.get("fieldName").toString) 

    } 

删除操作。

def deleteMongo(): Unit = { 
    var deleteQuery = new BasicDBObject 
    var tempObject = new BasicDBObject 
    deleteQuery.put("requestType", "temp"); 
    var cursor = new DBCursor(collectionName, deleteQuery, tempObject) 
    while (cursor.hasNext()) { 
     collectionName.remove(cursor.next()) 
    } 

我无法提供更新解决方案。对于那个很抱歉。

2

Brendan McAdams在这个link的演示文稿将为您提供有关如何将scala + mongoDB结合使用的大部分想法。

相关问题