Menu Docs
Página inicial do Docs
/ / /
Scala
/

Criar um MongoClient

Nesta página

  • Visão geral
  • URI de conexão
  • Exemplo de conexão do Atlas
  • Documentação da API

Para se conectar a um MongoDB deployment, você precisa de duas coisas:

  • Um URI de conexão , também conhecido como string de conexão , que informa ao driver Scala a qual sistema do MongoDB se conectar.

  • Um objeto MongoClient, que cria a conexão e permite que você execute operações no MongoDB deployment.

Você também pode usar o MongoClientSettings para personalizar a maneira como o driver Scala se comporta enquanto conectado ao MongoDB.

Este guia mostra como criar uma string de conexão e usar um objeto MongoClient para se conectar ao MongoDB.

Uma connection string padrão inclui os seguintes componentes:

Componente
Descrição

mongodb://

Obrigatório. Um prefixo que identifica isso como uma string no formato de conexão padrão.

username:password

Opcional. Credenciais de autenticação. Se você incluir estes, o cliente autenticará o usuário no banco de dados especificado authSource no. Para saber mais sobre a authSource opção de conexão do, consulte o guia de Mecanismos de Autenticação do.

host[:port]

Obrigatório. O host e o número da porta opcional em que o MongoDB está sendo executado. Se você não incluir o número da porta, o driver usará a porta padrão, 27017.

/defaultauthdb

Opcional. O authentication database de autenticação a ser usado se a connection string incluir as credenciais de autenticação username:password@ , mas não a opção authSource . Se você não incluir este componente, o cliente autenticará o usuário no banco de dados do admin .

?<options>

Opcional. Uma string da query que especifica opções específicas de conexão como <name>=<value> pares.

Para obter mais informações sobre a criação de uma string de conexão,consulte Connection strings no manual do MongoDB Server .

Para se conectar a uma implementação do MongoDB no Atlas, você deve primeiro criar um cliente.

Você pode passar um URI de conexão como uma string para o método MongoClient.create() para se conectar a uma instância do MongoDB :

// Replace the placeholder with your Atlas connection string
val connectionString = "<connection string>"
// Create a new client and connect to the server
val mongoClient = MongoClient(connectionString)
val database = mongoClient.getDatabase("sample_mflix")

Você também pode criar um cliente com suas configurações desejadas passando um objeto MongoClientSettings para um objeto MongoClient .

Para instanciar um objeto MongoClientSettings, chame o método builder(), encadeie o método applyConnectionString() e passe sua string de conexão. Você também pode utilizar o método builder() para especificar quaisquer outras opções do cliente . Depois de ter a configuração desejada, chame o método build().

Você pode definir a opção de cliente da stable API para evitar alteração interruptiva ao atualizar para uma nova versão do servidor. Para saber mais sobre o recurso de stable API, consulte a página de stable API.

O código a seguir mostra como você pode especificar a cadeia de conexão e a opção de cliente Stable API ao se conectar a uma implementação do MongoDB no Atlas e verificar se a conexão foi bem-sucedida:

import com.mongodb.{ServerApi, ServerApiVersion}
import org.mongodb.scala.{ConnectionString, MongoClient, MongoClientSettings}
import org.mongodb.scala.bson.Document
import scala.concurrent.Await
import scala.concurrent.duration.DurationInt
import scala.util.Using
object MongoClientConnectionExample {
def main(args: Array[String]): Unit = {
// Replace the placeholder with your Atlas connection string
val connectionString = "<connection string>"
// Construct a ServerApi instance using the ServerApi.builder() method
val serverApi = ServerApi.builder.version(ServerApiVersion.V1).build()
val settings = MongoClientSettings
.builder()
.applyConnectionString(ConnectionString(connectionString))
.serverApi(serverApi)
.build()
// Create a new client and connect to the server
Using(MongoClient(settings)) { mongoClient =>
// Send a ping to confirm a successful connection
val database = mongoClient.getDatabase("admin")
val ping = database.runCommand(Document("ping" -> 1)).head()
Await.result(ping, 10.seconds)
System.out.println("Pinged your deployment. You successfully connected to MongoDB!")
}
}
}

Para obter mais informações sobre como criar um objeto MongoClient com o driver Scala, consulte a seguinte documentação da API:

Voltar

Conecte