Estoy tratando de consultar campos específicos en una colección de mongodb. Aquí está mi código y de salida:Campos de consulta en una colección MongoDB.
Mongo m = new Mongo();
DB db = m.getDB("mydb");
DBCollection coll = db.getCollection("student") ;
// adding data
BasicDBObject moz = new BasicDBObject();
moz.put("Name", "Mozammil");
coll.insert(moz);
DBCursor cursor = coll.find();
while (cursor.hasNext()) {
System.out.println(cursor.next());
}
Esto devuelve lo siguiente:
{ "_id" : { "$oid" : "4f5a4477c5e80f71ece56797"} , "Name" : "Mozammil"}
Sin embargo, quiero solamente la parte del nombre. Buscando en Google, esto debería hacer el trabajo.
DBCursor cursor = coll.find({}, {'Name':1});
while (cursor.hasNext()) {
System.out.println(cursor.next());
}
Pero no está funcionando. ¿Ayuda por favor?
En su lugar, debe modificar su impresión. En lugar de simplemente volcar toda la fila de 'cursor.next()', debe poner eso en 'JSONObject' y luego solo imprimir los campos que desee usando los métodos JSONObject – jzworkman
En realidad, hay otro problema con la consulta en sí. http://d.pr/YVXu –
Quise decir simplemente usar el primer find() y luego analizar solo el campo de nombre en el ciclo de impresión. – jzworkman