Definir configurações de CRUD no nível do cliente
Visão geral
Neste guia, você aprenderá como usar o driver Java para configurar operações CRUD para instâncias MongoClient
.
As preferências de leitura, as write concerns e as read concerns controlam como o driver direciona as operações de leitura e espera a confirmação das operações de leitura e gravação quando conectado a um conjunto de réplicas do MongoDB. As preferências de leitura e as preocupações de leitura se aplicam a todas as operações de leitura; as write concerns se aplicam a todas as operações de gravação.
Para obter mais informações, consulte a documentação do servidor sobre preferências de leitura, read concerns e write concerns.
MongoDatabase
e instâncias MongoCollection
herdam suas preferências e preocupações do MongoClient
que as acessa. No entanto, você pode aplicar configurações personalizadas aos seus bancos de dados e coleções. Para obter mais informações, consulte a página Configurar configurações personalizadas de CRUD.
Você pode especificar configurações de CRUD no nível do cliente usando uma string de conexão ou passando um objeto MongoClientSettings
para o construtor MongoClients. Selecione a aba Connection String ou MongoClientSettings para visualizar as opções disponíveis:
Inclua os seguintes parâmetros em sua string de conexão para modificar o comportamento de leitura ou escrita do driver:
Nome da opção | Tipo | Descrição |
---|---|---|
| booleano | Especifica que o driver deve aguardar que a instância do MongoDB conectada faça o commit em grupo no arquivo de diário no disco para todas as gravações. Padrão: |
| string ou inteiro | Define a preocupação de gravação. Para obter mais informações sobre valores, consulte a documentação do MongoDB Server para a opção w. Padrão: |
| inteiro | Especifica um limite de tempo, em milésimos de segundo, para o preocupação de gravação. Para obter mais informações, consulte a documentação do MongoDB Server para a opção wtimeoutMS. Um valor de Padrão: |
| string | Especifica a preferência de leitura. Para obter mais informações sobre valores, consulte a documentação do MongoDB Server para a opção readPreference. Padrão: |
| string | Especifica as marcações de preferência de leitura. Para obter mais informações sobre valores, consulte a documentação do MongoDB Server para a opção readPreferenceTags. Padrão: |
| inteiro | Especifica, em segundos, o quão obsoleto um secundário pode ficar antes que o driver pare de se comunicar com esse secundário. O valor mínimo é 90 segundos ou a frequência de pulsação mais 10 segundos, o que for maior. Para obter mais informações, consulte a documentação do MongoDB Server para a opção maxStalenessSeconds. Não fornecer um parâmetro ou especificar explicitamente Padrão: |
| string | Especifica a representação do UUID a ser usada nas operações de leitura e gravação. Para obter mais informações, consulte a documentação do driver para o método MongoClientSettings.getUuidRepresentation(). Padrão: |
| booleano | Especifica que o driver deve repetir as operações de gravação com suporte se elas não puderem ser concluídas devido a um erro de rede. Padrão: |
| booleano | Especifica que o driver deve repetir as operações de leitura com suporte se não for possível concluir devido a um erro de rede. Padrão: |
O exemplo a seguir define a preferência de leitura para ler a partir do nó do conjunto de réplicas mais próximo:
ConnectionString connectionString = "mongodb://<host>:<port>/?readPreference=nearest" MongoClient mongoClient = MongoClients.create(connectionString)
Para obter mais informações sobre esses parâmetros, consulte a documentação da API ConnectionString.
Encadeie os seguintes métodos ao construtor MongoClientSettings
para modificar o comportamento de leitura/gravação do driver:
| Define a preocupação de leitura.Documentação da API da página de manual do servidor |
| Define a preferência de leitura Padrão: |
| Se o driver realiza novas leituras se ocorrer um erro de rede. Padrão: |
| Se o driver realiza gravações repetidas se ocorrer um erro de rede. Padrão: |
| Define a representação UUID para utilizar ao codificar instâncias de UUID e decodificando valores binários BSON com subtipo de 3. |
| Define a preocupação de gravação. Padrão: |
O exemplo a seguir define a preferência de leitura para ler a partir do nó do conjunto de réplicas mais próximo:
MongoClient mongoClient = MongoClients.create( MongoClientSettings.builder().applyConnectionString(new ConnectionString("<your connection string>")) .readPreference(ReadPreference.nearest()) .build());
Para obter mais informações sobre esses métodos, consulte a documentação da API do MongoClientSettings.Builder.