Java & MongoDB - 更新文档
要更新集合中的文档,您可以使用 collection.updateOne() 方法来更新集合的特定文档。
collection.updateOne(filter,update);
示例
以下是更新和显示更新后的文档的代码片段 −
import java.util.ArrayList; import java.util.List; import org.bson.Document; import com.mongodb.client.FindIterable; import com.mongodb.client.MongoClient; import com.mongodb.client.MongoClients; import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoDatabase; import com.mongodb.client.model.Filters; import com.mongodb.client.model.Updates; public class Tester { public static void main(String[] args) { // Creating a Mongo client MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017"); MongoDatabase database = mongoClient.getDatabase("myDb"); // Get the collection MongoCollection<Document> collection = database.getCollection("sampleCollection"); // Find all documents collection.updateOne(Filters.eq("First_Name","Mahesh"), Updates.set("e_mail", "maheshparashar@gmail.com")); System.out.println("Document Updated."); System.out.println("***Updated Document***"); // Select a particular document FindIterable<Document> documents = collection.find(Filters.eq("First_Name","Mahesh")); for (Document document : documents) { System.out.println(document); } } }
现在,让我们编译并运行上面的程序,如下所示。
$javac Tester.java $java Tester
输出
在执行时,上面的程序会有以下输出。
Document Updated. ***Updated Document*** Document{{_id=60b70d426214461f10ac5c99, First_Name=Mahesh, Last_Name=Parashar, Date_Of_Birth=1990-08-21, e_mail=maheshparashar@gmail.com, phone=9034343345}}