tl  tr
  Home | Tutorials | Articles | Videos | Products | Tools | Search
Interviews | Open Source | Tag Cloud | Follow Us | Bookmark | Contact   
 No SQL > Mongo DB > How to insert Nested Documents using Map

How to insert Nested Documents using Map 

MongoDB is a scalable, high-performance, open source NoSQL database. It offers Ad hoc queries, Indexing, Replication, Load balancing, File storage (GridFS), Aggregation, MapReduce and Server-side JavaScript execution. This requires the library mongo-2.8.0.jar to be present in the classpath. The following example shows how to insert a nested document in Mongo database.

File Name  :  
Author  :  Sudhakar KV
Email  :  [email protected]
package com.bethecoder.tutorials.mongodb.tests;

import java.util.HashMap;
import java.util.Map;

import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mongodb.Mongo;
import com.mongodb.MongoException;

public class NestedDocInsertionTest3 {

   @param args
  public static void main(String[] args) {
    try {
      //Connect to mongoDB with given IP and PORT
      Mongo mongo = new Mongo("localhost"27017);
      //Get the database object
      DB database = mongo.getDB("mytestdb");
      //Gets a collection with a given name.
        //If the collection does not exist, a new collection is created.
      DBCollection collection = database.getCollection("studentdetails");
      //Create and insert document to collection
      Map<String, Object> document = new HashMap<String, Object>();
      Map<String, Object> address = new HashMap<String, Object>();
      document.put("address", address);
      //Saves a document to the database
      collection.insert(new BasicDBObject(document));
      //Queries for all objects in this collection
      DBCursor dbCursor = collection.find();
      DBObject record = null;
      while (dbCursor.hasNext()) {
        record =;
    catch (UnknownHostException e) {
    catch (MongoException e) {


It gives the following output,
{ "_id" : { "$oid" : "503cc85842e23c947cfcfcc5"} , 
	"address" : { "DoorNo" : "1-2-3-4" , "City" : "Bangalore"} , 
	"age" : 2 , "name" : "Sriram"}


bl  br