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://: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}}
廣告
© . All rights reserved.