2014-12-26 28 views
0

我有我的sampledb databaseuser collection,我做了一些如下的條目。我想執行多個字段的查詢,如果所有的字段匹配,然後返回true否則false如何在java中用mongodb查找id和密碼?

user 
{ 
    "_id": "[email protected]", 
    "first_name": "XYZ", 
    "last_name": "PQR", 
    "password": "xyzxyz", 
} 

我怎樣寫與email and pwd執行通過user collection查詢,並返回true的方法,只有當email比賽與_idpassword匹配pwd

謝謝...

回答

1

要查找是否有包含_id有密碼字段的文檔pwd如下

BasicDBObject query = new BasicDBObject(); 
query.put("_id",email); 
query.append("Password",pwd); 
BasicDBObject obj = new BasicDBObject(); 
obj.put("_id",2); 
DBCursor cursor = collection.find(query,obj); 
return cursor.hasNext(); 
+1

可以簡化爲'return cursor.hasNext()'。 – August

+0

@八月好吧... –

2

如果你想看看如果文檔與存在的給定_idpassword

public boolean userExists(String email, String password) { 
    DBObject query = new BasicDBObject("_id", email).append("pwd", password); 
    return client.getDB("sampledb").getCollection("user").findOne(query) != null; 
} 
+0

文檔用戶包含電子郵件和pwd以及其他一些數據。我想查找包含此電子郵件的文檔,其密碼爲pwd。 –

+0

@SatishPatel但是你在示例文檔中使用'password'鍵,不是? – August

+0

是的,沒錯。我想我正在做其他課程中的一些事情。我會更新你。 –