MongoDB-Java : Java : Get specific fields from the document from Java/MongoDb
usually “find()” method returns all the fields of document. You can restrict the fields returned be find query by passing “keys” document as a parameter.
Example
BasicDBObject query = new BasicDBObject();
BasicDBObject fields = new BasicDBObject();
fields.put("firstName", 1);
fields.put("lastName", 1);
fields.put("_id", 0);
DBCursor cursor = collection.find(query, fields);
Above snippet returns "firstName" and "lastName" fields of the documents. Result documents will not contain "_id" field.
> db.employee.find()
{ "_id" : 1, "firstName" : "Joel", "lastName" : "chelli" }
{ "_id" : 2, "firstName" : "Ananad", "lastName" : "Bandaru" }
{ "_id" : 3, "firstName" : "Gopi", "lastName" : "Battu" }
{ "_id" : 4, "firstName" : "Ritwik", "lastName" : "Mohenthy" }
Let’s say I had above data in my employee collection.
import java.net.UnknownHostException;
import com.mongodb.BasicDBObject;
import com.mongodb.DBCursor;
import com.mongodb.MongoClient;
import com.mongodb.DB;
import com.mongodb.DBCollection;
public class FindDocument {
/* Step 1 : get mongoCLient */
public static MongoClient getMongoClient(){
MongoClient mongoClient = null;
try {
mongoClient = new MongoClient( "localhost" , 27017 );
} catch (UnknownHostException e) {
e.printStackTrace();
}
return mongoClient;
}
public static void main(String args[]){
MongoClient mongoClient = getMongoClient();
/* Step 2: Connect to DB */
DB db = mongoClient.getDB("sample");
/*Step 3 : Get collection */
DBCollection collection = db.getCollection("employee");
/* Step 4 : Create keys to get in result */
BasicDBObject query = new BasicDBObject();
BasicDBObject fields = new BasicDBObject();
fields.put("firstName", 1);
fields.put("lastName", 1);
fields.put("_id", 0);
/* Step 5 : Get all documents */
DBCursor cursor = collection.find(query, fields);
/* Step 6 : Print all documents */
while(cursor.hasNext()){
System.out.println(cursor.next());
}
}
}
Output
{ "firstName" : "Joel" , "lastName" : "chelli"}
{ "firstName" : "Ananad" , "lastName" : "Bandaru"}
{ "firstName" : "Gopi" , "lastName" : "Battu"}
{ "firstName" : "Ritwik" , "lastName" : "Mohenthy"}
usually “find()” method returns all the fields of document. You can restrict the fields returned be find query by passing “keys” document as a parameter.
Example
BasicDBObject query = new BasicDBObject();
BasicDBObject fields = new BasicDBObject();
fields.put("firstName", 1);
fields.put("lastName", 1);
fields.put("_id", 0);
DBCursor cursor = collection.find(query, fields);
Above snippet returns "firstName" and "lastName" fields of the documents. Result documents will not contain "_id" field.
> db.employee.find()
{ "_id" : 1, "firstName" : "Joel", "lastName" : "chelli" }
{ "_id" : 2, "firstName" : "Ananad", "lastName" : "Bandaru" }
{ "_id" : 3, "firstName" : "Gopi", "lastName" : "Battu" }
{ "_id" : 4, "firstName" : "Ritwik", "lastName" : "Mohenthy" }
Let’s say I had above data in my employee collection.
import java.net.UnknownHostException;
import com.mongodb.BasicDBObject;
import com.mongodb.DBCursor;
import com.mongodb.MongoClient;
import com.mongodb.DB;
import com.mongodb.DBCollection;
public class FindDocument {
/* Step 1 : get mongoCLient */
public static MongoClient getMongoClient(){
MongoClient mongoClient = null;
try {
mongoClient = new MongoClient( "localhost" , 27017 );
} catch (UnknownHostException e) {
e.printStackTrace();
}
return mongoClient;
}
public static void main(String args[]){
MongoClient mongoClient = getMongoClient();
/* Step 2: Connect to DB */
DB db = mongoClient.getDB("sample");
/*Step 3 : Get collection */
DBCollection collection = db.getCollection("employee");
/* Step 4 : Create keys to get in result */
BasicDBObject query = new BasicDBObject();
BasicDBObject fields = new BasicDBObject();
fields.put("firstName", 1);
fields.put("lastName", 1);
fields.put("_id", 0);
/* Step 5 : Get all documents */
DBCursor cursor = collection.find(query, fields);
/* Step 6 : Print all documents */
while(cursor.hasNext()){
System.out.println(cursor.next());
}
}
}
Output
{ "firstName" : "Joel" , "lastName" : "chelli"}
{ "firstName" : "Ananad" , "lastName" : "Bandaru"}
{ "firstName" : "Gopi" , "lastName" : "Battu"}
{ "firstName" : "Ritwik" , "lastName" : "Mohenthy"}
No comments:
Post a Comment