Overview
En esta guía, puedes aprender cómo usar el driver de Java para configurar operaciones CRUD para MongoClient instancia.
Las preferencias de lectura, los niveles de consistencia de lectura y los niveles de confirmación de escritura (write concern) controlan cómo el driver enruta las operaciones de lectura y espera el reconocimiento para las operaciones de lectura y escritura cuando está conectado a un conjunto de réplicas de MongoDB. Las preferencias de lectura y los niveles de consistencia de lectura se aplican a todas las operaciones de lectura; los niveles de confirmación de escritura (write concern) se aplican a todas las operaciones de escritura.
Para obtener más información, consulte la documentación del servidor en leer preferencias, niveles de consistencia de lectura, y niveles de confirmación de escritura (write concern)
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ágina Configurar ajustes CRUD personalizados.
Puedes especificar los ajustes de CRUD a nivel de cliente utilizando un cadena de conexión o pasando un objeto MongoClientSettings al constructor MongoClients. Seleccione el Connection String o la 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 guardado del driver:
Nombre de la opción | Tipo | Descripción |
|---|---|---|
| booleano | Especifica que el driver debe esperar a que la instancia conectada de MongoDB agrupe los commit en el archivo de registro en disco para todos los guardados. Por defecto: |
| string o número entero | Especifica el nivel de confirmación de escritura (write concern). Para obtener más información sobre los valores, consulta 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 más información sobre los valores, consulta la documentación del Servidor MongoDB para la opción readPreferenceTags. Por defecto: |
| entero | Especifica, en segundos, cuán desactualizado puede estar un secundario antes de que el driver deje de comunicarse con ese secundario. El valor mínimo es 90 segundos o la frecuencia del latido más 10 segundos, el que sea mayor. Para más información, consulta la documentación de MongoDB Server para la opción maxStalenessSeconds. No proporcionar un parámetro o especificar explícitamente Por defecto: |
| string | Especifica la representación UUID a utilizar para las operaciones de lectura y guardar. Para obtener más información, consulte la documentación del driver para el método MongoClientSettings.getUuidRepresentation(). Por defecto: |
| booleano | Especifica que el driver debe reintentar las operaciones de guardado compatibles si no puede completarlas 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, consulta la Cadena de conexión documentación de la API.
Encadene los siguientes métodos a su constructor MongoClientSettings para modificar el comportamiento de lectura/escritura del controlador:
| Establece el nivel de consistencia de lectura. Página manual del servidor Documentación API |
| Configura 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 se produce 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.