Over a million developers have joined DZone.

MongoDB Commands & Concepts: Rookie's Quick Reference

· Java Zone

What every Java engineer should know about microservices: Reactive Microservices Architecture.  Brought to you in partnership with Lightbend.

This article presents some of the basic concepts and commands which could prove useful for rookies starting with MongoDB.

Key Concepts

Simply speaking, MongoDB is a very popular NoSQL database with document-oriented storage. If you are a SQL developer and having challenges understanding document-oriented database, check out this page on mapping between SQL to MongoDB mapping. For a detailed introduction on MondoDB, check out this introduction page.

Following are some of the key terminologies:

  • Database
  • Collections
  • Document
  • Field
  • Primary key (_id)
  • index

JSON-styled Documents: The most important concept is document-oriented storage, and the documents are JSON-styled. Thus, one would require to learn JSON very well to do well with MongoDB as JSON-styled document is at the heart of it.

As like MySQL server and client, MongoDB also has a server and client. Following are the commands:

mongod: Start the server
mongo: Start the client


Following is a sample document in the collection, “users”:

    _id: ObjectId("509a8fb2f3f4658bd2f783a0"),
    firstname: "Chris",
    lastname: "Johnson",
    age: 25,
    email: "chris.johnson@gmail.com"


Simply speaking, Collection is a set of documents.

Key Commands

Before I list down some, I must say that you may see a detailed query samples  in comparison with traditional SQL statements on this page.

  • show dbs: Shows all the databases
  • use <dbname>: Use the database; Create the database if not present in the database list
  • show collections: Shows all the collections in any database

CRUD: Create A Collection Explicity

db.createCollection( "&lt;collectionname&gt;" )

CRUD: Create A Document

db..insert( ): Create the collection if does not exist and insert the document OR, Insert the document in the existing collection having name as . Following is the sample command:

//Insert a new document in the collection users
        firstname: "Bill",
        lastname: "Sherwood",
        age: 32,
        email: "bill1994@hotmail.com"
// Insert multiple documents or array of documents
    { firstname: "Bill", lastname: "Sherwood", age: 32,email: "bill1994@hotmail.com"},
    { firstname: "Chris", lastname: "Johnson", age: 28,email: "chris123@gmail.com"},

CRUD: Select Documents

//Shows all the documents within a collection. 

CRUD: Update Documents

//Updates multiple documents set firstname = "William" whose age = 35
  { age: 35 },
  { $set: { firstname: "William" } ,
  { multi: true }

CRUD: Delete Document

// Removes the document with age=35
    { age: 35 }
// Removes all the document
db.users.remove( {} )

As mentioned earlier, if you want to quickly learn these commands with equivalent MySQL commands in the sight, do bookmark the following link: http://docs.mongodb.org/manual/reference/sql-comparison/

Microservices for Java, explained. Revitalize your legacy systems (and your career) with Reactive Microservices Architecture, a free O'Reilly book. Brought to you in partnership with Lightbend.


Published at DZone with permission of Ajitesh Kumar, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}