1
我有一个java程序,它可以根据某个日期条件查找文档并将其全部删除。我不知道如何删除这些文件一旦找到。当我使用以下命令查询MongoDB数据库时,它显示我2706
文件存在。如何使用java删除mongodb中的多个文档
MongoDB的版本:3.0
蒙戈-Java驱动程序版本:3.1.0
蒙戈Shell命令:
db.jobs.find({"startTime" : { $gte : "2015-11-04 00:00:00"}}).count();
Output: 2706
我有以下的Java程序,它或多或少类似于上述命令。
Java代码:
MongoDatabase database = DataSourceFactory.getDatabase(DatabaseType.MONGODB.name());
MongoCollection<Document> collection = database.getCollection("jobs");
//find and delete existing documents first
String currentDate = GenericUtils.getCurrentDate() + " 00:00:00";
Document doc = collection.findOneAndDelete(gte("startTime", currentDate));
我不知道如果findOneAndDelete()
方法的用法是要走的路。我是否必须编写一个这样的循环?有没有办法在一次拍摄中找到并删除所有记录?
不知道如何删除所有记录,并得到多少被删除的计数。
我用Google搜索,发现了一些在线教程,但其中大部分是基于旧版本2.1, 2.2
等
请指导。