Escolha um destino de conexão
Visão geral
Neste guia, você pode aprender como utilizar uma string de conexão e um objeto do MongoClient
para conectar a diferentes tipos de sistemas MongoDB .
Atlas
Para se conectar a uma MongoDB deployment no Atlas, inclua os seguintes elementos em sua connection string:
O URL do seu Atlas cluster
Seu nome de usuário MongoDB
Sua senha do MongoDB
Em seguida, passe sua connection string para o construtor MongoClient
.
Dica
Siga oguia de conexão do driver do Atlas para recuperar sua connection string.
Ao se conectar ao Atlas, recomendamos usar a opção de cliente Stable API para evitar alterações significativas quando o Atlas atualizar para uma nova versão do MongoDB Server. Para saber mais sobre o recurso de Stable API , consulte o guia deStable API .
O código abaixo mostra como usar o driver Kotlin Sync para se conectar a um cluster do Atlas . O código também usa o método serverApi()
para especificar uma versão da Stable API .
// Defines Stable API version val serverApi = ServerApi.builder() .version(ServerApiVersion.V1) .build() // Uses MongoClientSettings to apply connection string and specify the Stable API version val settings = MongoClientSettings.builder() .applyConnectionString("<connection string URI>") .serverApi(serverApi) .build() val mongoClient = MongoClient.create(settings)
Implantações locais
Para se conectar a uma implantação local do MongoDB, use localhost
como nome do host. Por padrão, o processo mongod
é executado na porta 27017, embora você possa personalizar isso para seu sistema.
O código a seguir mostra como usar o driver Kotlin Sync para se conectar a uma implementação local do MongoDB :
val settings = MongoClientSettings.builder() .applyConnectionString("mongodb://localhost:27017") .build() val mongoClient = MongoClient.create(settings)
Conjuntos de réplicas
Para se conectar a um conjunto de réplicas, especifique o nome do host (ou endereço IP) e o número de porta dos membros do conjunto de réplicas.
Se você não conseguir fornecer uma lista completa de hosts no conjunto de réplicas, poderá especificar um ou mais hosts no conjunto de réplicas e instruir o driver Kotlin Sync a executar a descoberta automática para encontrar os outros. Para instruir o driver a realizar a descoberta automática, execute uma das seguintes ações:
Especifique o nome do conjunto de réplica como o valor do parâmetro
replicaSet
.Especifique
false
como o valor do parâmetrodirectConnection
.Especifique mais de um host no conjunto de réplica.
Os exemplos seguintes mostram como conectar a um conjunto de réplicas MongoDB executando na porta 27017
de três hosts diferentes utilizando a classe ConnectionString
ou MongoClientSettings
. Selecione a aba que corresponde à sua classe preferida .
val mongoClient = MongoClient.create("mongodb://host1:27017,host2:27017,host3:27017/")
val hosts = listOf( ServerAddress("host1", 27017), ServerAddress("host2", 27017), ServerAddress("host3", 27017) ) val settings = MongoClientSettings.builder() .applyToClusterSettings { builder -> builder.hosts(hosts) } .build() val mongoClient = MongoClient.create(settings)
Observação
O construtor MongoClient
não está bloqueando. Quando você se conecta a um conjunto de réplicas, o construtor retorna imediatamente enquanto o cliente usa threads em segundo plano para se conectar ao conjunto de réplicas.
Se você construir um MongoClient
e imprimir imediatamente a representação de string de seu atributo nodes
, a lista poderá estar vazia enquanto o cliente se conecta aos membros do conjunto de réplicas.