Run Commands

Not all commands have a specific helper. However, you can run any MongoDB command by using the runCommand() method.

Prerequisites

  • The example below requires a restaurants collection in the test database. To create and populate the collection, follow the directions in github.

  • Include the following import statements:

     import com.mongodb.async.client.MongoClient;
     import com.mongodb.async.client.MongoClients;
     import com.mongodb.async.client.MongoDatabase;
     import com.mongodb.async.SingleResultCallback;
     import org.bson.Document;
    

Connect to a MongoDB Deployment

Connect to a MongoDB deployment and declare and define a MongoDatabase instance.

For example, include the following code to connect to a standalone MongoDB deployment running on localhost on port 27017 and define database to refer to the test database:

MongoClient mongoClient = MongoClients.create();
MongoDatabase database = mongoClient.getDatabase("mydb");

For additional information on connecting to MongoDB, see Connect to MongoDB.

Run buildInfo and collStats Commands

To run a command, construct a Document object that specifies the command and pass it to the runCommand() method.

The following runs the buildInfo command and the collStats method:

database.runCommand(new Document("buildInfo", 1), new SingleResultCallback<Document>() {
    @Override
    public void onResult(final Document buildInfo, final Throwable t) {
        System.out.println(buildInfo);
    }
});

database.runCommand(new Document("collStats", 1), new SingleResultCallback<Document>() {
    @Override
    public void onResult(final Document collStats, final Throwable t) {
        System.out.println(collStats);
    }
});

For a list of available MongoDB commands, see MongoDB commands.