Fantastiskt, du kommer att älska Mongo.
I exemplet du postade, itererar programmet genom en uppsättning resultat. I användar-/lösenordsproblemet beskriver du vad du faktiskt försöker göra är att skaffa ett dokument (inte en uppsättning dokument) baserat på vissa kriterier.
På skalet som skulle se ut så här:
n = "login"
p = "password"
db.users.findOne({ user: n, password: p})
Observera att jag använder findOne istället för find som returnerar ett dokument istället för en markör till många dokument.
Låt oss nu ta en titt på java-drivrutinens exempel:
BasicDBObject query = new BasicDBObject();
query.put("i", 71);
cur = coll.find(query);
while(cur.hasNext()) {
System.out.println(cur.next());
}
BasicDBO-objektet skapar frågeobjektet och sedan sätter du olika kriterier som tillsammans bildar din fråga.
Så istället för query.put("i", 71);
du skulle göra något i stil med:
query.put("user", n)
query.put("password", p)
och... istället för while-loopen, använd bara findOne istället för find så att du inte behöver iterera över resultatuppsättningen med 1 objekt (meningslöst).
Du kan läsa mer om findOne() här .