是否可以从集合中批量删除列表(列表)的所有文档?
我在想类似mongooperations.deleteAll(list);
它不一定是列表,而是我可以收集文档并批量删除它们的任何集合,而不是总是删除单个文档。
答案 0 :(得分:0)
这里是删除文档_id
列表的查询。假设_id
是数字,则可以这样做:
List<Integer> ids = Arrays.asList(1, 2, 3, 4);
MongoOperations mongoOps = new MongoTemplate(MongoClients.create(), "testDB");
Query q = new Query(where("_id").in(ids));
List<Test> deletedDocs = mongoOps.findAllAndRemove(q, Test.class, "testColl");
// -or-
//List<Document> deletedDocs = mongoOps.findAllAndRemove(q, "testColl");
System.out.println(deletedDocs);