Insira vários documentos
Você pode inserir vários documentos em uma coleção em uma única operação chamando o método insertMany()
em um objeto MongoCollection
. Para inseri-los, adicione seus objetos Document
a um List
e passe esse List
como argumento para insertMany()
. Se você chamar o método insertMany()
em uma collection que ainda não existe, o servidor criará para você.
Após a inserção bem-sucedida, o insertMany()
retorna uma instância de InsertManyResult
. Você pode recuperar informações como os campos _id
dos documentos inseridos chamando o método getInsertedIds()
na instância InsertManyResult
.
Se a sua operação de inserção falhar, o driver emitirá uma exceção. Para obter mais informações sobre os tipos de exceções geradas em condições específicas, consulte a documentação da API para insertMany()
, cujo link está no final desta página.
Exemplo
O trecho a seguir insere vários documentos na collection movies
.
Ao executar o exemplo, você deverá visualizar a saída com os valores ObjectId
dos documentos inseridos em cada um dos campos de valor:
Observação
Esse exemplo se conecta a uma instância do MongoDB usando um URI de conexão. Para saber mais sobre como se conectar à sua instância do MongoDB , consulte oguia de conexão .
import com.mongodb.MongoException import com.mongodb.kotlin.client.coroutine.MongoClient import kotlinx.coroutines.runBlocking data class Movie(val title: 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") val movieList = listOf( Movie("Short Circuit 3"), Movie("The Lego Frozen Movie") ) try { val result = collection.insertMany(movieList) println("Success! Inserted document ids: " + result.insertedIds) } catch (e: MongoException) { System.err.println("Unable to insert due to an error: $e") } mongoClient.close() }
Success! Inserted document ids: {0=BsonObjectId{value=...}, 1=BsonObjectId{value=...}}
Para obter mais informações sobre as classes e métodos mencionados nesta página, consulte a seguinte documentação da API: