Overview
En esta guía, puede aprender a utilizar el controlador Java para configurar operaciones CRUD para MongoClient instancias.
Las preferencias de lectura, las preocupaciones de lectura y las preocupaciones de escritura controlan cómo el controlador enruta las operaciones de lectura y espera la confirmación de las operaciones de lectura y escritura al conectarse a un conjunto de réplicas de MongoDB. Las preferencias de lectura y las preocupaciones de lectura se aplican a todas las operaciones de lectura; las preocupaciones de escritura, a todas las operaciones de escritura.
Para obtener más información, consulte la documentación del servidor en Leer preferencias, leer inquietudes y escribir inquietudes.
MongoDatabase Las instancias MongoCollection y MongoClient heredan sus preferencias e inquietudes de la instancia que accede a ellas. Sin embargo, puede aplicar configuraciones personalizadas a sus bases de datos y colecciones. Para obtener más información, consulte
PáginaConfigurar ajustes CRUD personalizados.
Puede especificar la configuración CRUD a nivel de cliente mediante una cadena de conexión o pasando un MongoClientSettings objeto al constructor MongoClients. Seleccione el Connection String o pestaña MongoClientSettings para ver las opciones disponibles:
Incluya los siguientes parámetros en su cadena de conexión para modificar el comportamiento de lectura o escritura del controlador:
Nombre de la opción | Tipo | Descripción |
|---|---|---|
| booleano | Especifica que el controlador debe esperar a que la instancia MongoDB conectada realice la confirmación agrupada en el archivo de diario en el disco para todas las escrituras. Por defecto: |
| cadena o entero | Especifica el problema de escritura. Para obtener más información sobre los valores, consulte la documentación de MongoDB Server para la opción w. Por defecto: |
| entero | Especifica un límite de tiempo, en milisegundos, para la operación de escritura. Para obtener más información, consulte la documentación del servidor MongoDB para la opción wtimeoutMS. Un valor de Por defecto: |
| string | Especifica la preferencia de lectura. Para obtener más información sobre los valores, consulte la documentación del servidor MongoDB para la opción readPreference. Por defecto: |
| string | Especifica las etiquetas de preferencia de lectura. Para obtener más información sobre los valores, consulte la documentación del servidor MongoDB para la opción readPreferenceTags. Por defecto: |
| entero | Especifica, en segundos, el tiempo de inactividad de un secundario antes de que el controlador deje de comunicarse con él. El valor mínimo es 90 segundos o la frecuencia de latido más 10 segundos, el que sea mayor. Para obtener más información, consulte la documentación del servidor MongoDB para la opción maxStalenessSeconds. Si no se proporciona un parámetro o se especifica explícitamente, no Por defecto: |
| string | Especifica la representación UUID que se usará para las operaciones de lectura y escritura. Para obtener más información, consulte la documentación del controlador para el método MongoClientSettings.getUuidRepresentation(). Por defecto: |
| booleano | Especifica que el controlador debe volver a intentar las operaciones de escritura admitidas si no pueden completarse debido a un error de red. Por defecto: |
| booleano | Especifica que el controlador debe volver a intentar las operaciones de lectura admitidas si no pueden completarse debido a un error de red. Por defecto: |
El siguiente ejemplo establece la preferencia de lectura para leer desde el miembro del conjunto de réplicas más cercano:
ConnectionString connectionString = "mongodb://<host>:<port>/?readPreference=nearest" MongoClient mongoClient = MongoClients.create(connectionString)
Para obtener más información sobre estos parámetros, consulte la documentación de la API ConnectionString.
Encadene los siguientes métodos a su constructor MongoClientSettings para modificar el comportamiento de lectura/escritura del controlador:
| Establece la preocupación de lectura. Página del manual del servidor, documentación de la API. |
| Establece la preferencia de lectura Por defecto: |
| Si el controlador realiza reintentos de lectura si ocurre un error de red. Por defecto: |
| Si el controlador realiza reintentos de escritura si ocurre un error de red. Por defecto: |
| Establece la representación UUID que se utilizará al codificar instancias de UUID y decodificar valores binarios BSON con el subtipo 3. |
| Configura el nivel de confirmación de escritura Por defecto: |
El siguiente ejemplo establece la preferencia de lectura para leer desde el miembro del conjunto de réplicas más cercano:
MongoClient mongoClient = MongoClients.create( MongoClientSettings.builder().applyConnectionString(new ConnectionString("<your connection string>")) .readPreference(ReadPreference.nearest()) .build());
Para obtener más información sobre estos métodos, consulte la documentación de la API MongoClientSettings.Builder.