Overview
Esta página contiene ejemplos de código que muestran cómo utilizar el driver Kotlin sincronizar para conectar su aplicación a MongoDB especificando varios ajustes.
Tip
Opciones de conexión
Para obtener más información sobre las opciones de conexión en esta página, consulte el enlace proporcionado en cada sección. También puede ver la Especificar Opciones de Conexión guía para obtener más información.
Para usar un ejemplo de conexión de esta página, copia el ejemplo de código en el
aplicación de muestra o su propia aplicación. Asegúrese de reemplazar todos los marcadores de posición en los ejemplos de código, como
<hostname>, con los valores relevantes para su implementación de MongoDB.
Aplicación de muestra
Puede utilizar la siguiente aplicación de muestra para probar los ejemplos de código en esta página. Para usar la aplicación de muestra, siga los siguientes pasos:
Asegúrate de tener el controlador Kotlin Sync instalado en tu proyecto Maven o Gradle.
Copia el siguiente código y pégalo en un nuevo archivo
.kt.Copia un ejemplo de código de esta página y pégalo en las líneas especificadas del archivo.
1 import com.mongodb.kotlin.client.MongoClient 2 import org.bson.Document 3 4 fun main() { 5 6 // Start example code here 7 8 // End example code here 9 10 val database = mongoClient.getDatabase("admin") 11 12 val command = Document("ping", 1) 13 val commandResult = database.runCommand(command) 14 println("Pinged your deployment. You successfully connected to MongoDB!") 15 }
Conexión
Las siguientes secciones describen cómo conectarse a diferentes destinos, como una instancia local de MongoDB o una instancia alojada en la nube en Atlas.
Implementación local
El siguiente código muestra la cadena de conexión para conectar con una instancia local de MongoDB:
val uri = "mongodb://localhost:27017/" val mongoClient = MongoClient.create(uri)
Atlas
El siguiente código muestra la cadena de conexión para conectar con una implementación alojada en Atlas:
val uri = "mongodb+srv://<db_username>:<db_password>@<hostname/port>/?<options>" val mongoClient = MongoClient.create(uri)
Set de réplicas
El siguiente código muestra la cadena de conexión para conectarse a un set de réplicas:
val uri = "mongodb://<replica set member>:<port>/?replicaSet=<replica set name>" val mongoClient = MongoClient.create(uri)
Capa de seguridad de transporte (TLS)
Las siguientes secciones describen cómo conectarse a MongoDB habilitando el protocolo TLS. Para obtener más información sobre el uso de TLS con el controlador Kotlin Sync, consulta Habilitar TLS/SSL en una conexión.
Habilitar TLS
Las siguientes pestañas demuestran cómo habilitar TLS en una conexión:
val settings = MongoClientSettings.builder() .applyConnectionString(ConnectionString("<connection string>")) .applyToSslSettings { builder -> builder.enabled(true) } .build() val mongoClient = MongoClient.create(settings)
val uri = "mongodb+srv://<db_username>:<db_password>@<cluster-url>?tls=true" val mongoClient = MongoClient.create(uri)
Para obtener más información sobre cómo habilitar TLS, consulta Habilitar TLS en la guía de configuración de TLS.
Deshabilitar la verificación del nombre de host
Las siguientes pestañas demuestran cómo desactivar la verificación del nombre de host al conectarse mediante TLS:
val settings = MongoClientSettings.builder() .applyConnectionString(ConnectionString("<connection string>")) .applyToSslSettings { builder -> builder.enabled(true) builder.invalidHostNameAllowed(true) } .build() val mongoClient = MongoClient.create(settings);
val uri = "mongodb://<db_username>:<db_password>@<hostname>:<port>/?"tls=true&tlsAllowInvalidHostnames=true" val mongoClient = MongoClient.create(uri)
Selección de servidores
El siguiente código muestra una cadena de conexión que especifica una función de selección de servidor:
val client = MongoClient.create("mongodb://<db_username>:<db_password>@<hostname>:<port>", server_selector=<selector function>)
Stable API
El siguiente código muestra cómo especificar la configuración de Stable API dentro de una instancia MongoClientSettings:
val serverApi = ServerApi.builder() .version(ServerApiVersion.V1) .build() val uri = "<connection string>" val settings = MongoClientSettings.builder() .applyConnectionString(ConnectionString(uri)) .serverApi(serverApi) .build() val client = MongoClient.create(settings)
Para obtener más información sobre la API estable, consulta Conectarse con la API estable.