插入文档
您可以使用以下方法将单个文档插入到集合中:insertOne()
方法在 MongoCollection
对象上。要插入一个文档,构造一个包含您要存储的字段和值的 Document
对象。如果您在一个尚不存在的集合上调用 insertOne()
方法,服务器将自动为您创建它。
成功插入后,insertOne()
返回一个 InsertOneResult
实例。您可以通过在 InsertOneResult
实例上调用 getInsertedId()
方法来获取您插入的文档的 _id
字段信息。
如果您的插入操作失败,驱动程序将引发一个异常。有关特定条件下引发异常的类型的信息,请参阅此页底部链接的 insertOne()
的 API 文档。
示例
以下代码片段将单个文档插入到 movies
集合中。
运行示例后,您应该会在输出中看到插入的文档的 ObjectId
值。
注意
此示例使用连接 URI 连接到 MongoDB 的一个实例。有关连接到您的 MongoDB 实例的更多信息,请参阅连接指南.
import com.mongodb.MongoException import com.mongodb.kotlin.client.coroutine.MongoClient import kotlinx.coroutines.runBlocking import org.bson.codecs.pojo.annotations.BsonId import org.bson.types.ObjectId data class Movie( val id: ObjectId, val title: String, val genres: List<String>) fun main() = runBlocking { // Replace the uri string with your MongoDB deployment's connection string val uri = "<connection string uri>" val mongoClient = MongoClient.create(uri) val database = mongoClient.getDatabase("sample_mflix") val collection = database.getCollection<Movie>("movies") try { val result = collection.insertOne( Movie(ObjectId(), "Ski Bloopers", listOf("Documentary", "Comedy")) ) println("Success! Inserted document id: " + result.insertedId) } catch (e: MongoException) { System.err.println("Unable to insert due to an error: $e") } mongoClient.close() }
Success! Inserted document id: BsonObjectId{value=...}
有关本页上提到的类和方法的其他信息,请参阅以下 API 文档