Delete
Import restaurants collection
wget https://www.dropbox.com/s/bfi06m1fvemzj69/primer-dataset-small.json
mongoimport --uri "mongodb+srv://admatic:admatic123@admatic-cluster-7qyyr.mongodb.net/admatic-db" \
--collection restaurants --drop --file primer-dataset-small.json
2019-02-25T16:23:06.163+0000 connected to: localhost
2019-02-25T16:23:06.323+0000 dropping: admatic-db.restaurants
2019-02-25T16:23:06.696+0000 imported 10 documents
Code
mkdir -p src/main/java/com/admatic/primer
vim src/main/java/com/admatic/primer/RemovePrimer.java
package com.admatic.primer;
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.result.DeleteResult;
import org.bson.Document;
import java.util.logging.Level;
import java.util.logging.Logger;
public class RemovePrimer {
private static void removeMatchingDocuments(MongoDatabase db) {
DeleteResult deleteResult = db.getCollection("restaurants").deleteMany(new Document("borough", "Manhattan"));
System.out.println("Deleted Count = " + deleteResult.getDeletedCount());
}
private static void removeAllDocuments(MongoDatabase db) {
DeleteResult deleteResult = db.getCollection("restaurants").deleteMany(new Document());
System.out.println("Deleted Count = " + deleteResult.getDeletedCount());
}
private static void dropCollection(MongoDatabase db) {
db.getCollection("restaurants").drop();
}
public static void main(final String[] args) {
Logger mongoLogger = Logger.getLogger("org.mongodb.driver");
mongoLogger.setLevel(Level.SEVERE);
MongoClient mongoClient;
if (args.length == 0) {
mongoClient = MongoClients.create();
} else {
mongoClient = MongoClients.create(args[0]);
}
MongoDatabase database = mongoClient.getDatabase("admatic-db");
switch (args[1]) {
case "0":
System.out.println("removeMatchingDocuments");
removeMatchingDocuments(database);
break;
case "1":
System.out.println("removeAllDocuments");
removeAllDocuments(database);
break;
case "2":
System.out.println("dropCollection");
dropCollection(database);
break;
default:
System.out.println("Enter an option between 0 and 2");
}
mongoClient.close();
}
}
Compile
mvn compile
Run
Remove Matching Documents
db.getCollection("restaurants").deleteMany(new Document("borough", "Manhattan"))
mvn exec:java -Dexec.mainClass=com.admatic.primer.RemovePrimer \
-Dexec.args="mongodb+srv://admatic:admatic123@admatic-cluster-7qyyr.mongodb.net/test 0"
removeMatchingDocuments
Deleted Count = 1
Remove All Documents
db.getCollection("restaurants").deleteMany(new Document())
mvn exec:java -Dexec.mainClass=com.admatic.primer.RemovePrimer \
-Dexec.args="mongodb+srv://admatic:admatic123@admatic-cluster-7qyyr.mongodb.net/test 1"
removeAllDocuments
Deleted Count = 9
Drop Collection
db.getCollection("restaurants").drop()
mvn exec:java -Dexec.mainClass=com.admatic.primer.RemovePrimer \
-Dexec.args="mongodb+srv://admatic:admatic123@admatic-cluster-7qyyr.mongodb.net/test 2"
dropCollection