Bancos de dados e coleções
Nesta página
Visão geral
Este guia mostra como usar bancos de dados e collections do MongoDB com o driver Java do MongoDB.
O MongoDB organiza os dados em uma hierarquia dos seguintes níveis:
Bancos de dados
Collections
Documentos
Bancos de dados são o nível mais alto de organização de dados em uma instância MongoDB. Os bancos de dados são organizados em collections que contêm documentos. Os documentos contêm dados literais, como strings, números e datas, bem como outros documentos (incorporados). Para obter mais informações sobre tipos de campo de documento e estrutura, consulte a documentação do servidor para documentos do .
Acessar um banco de dados
Use o getDatabase() de uma MongoClient
instância para acessar um MongoDatabase
em uma instância do MongoDB .
O exemplo a seguir acessa um banco de dados chamado "testDatabase":
MongoDatabase database = mongoClient.getDatabase("testDatabase");
Acessar uma coleção
Use o método getCollection() de uma MongoDatabase
instância para acessar um MongoCollection
em um banco de dados de sua instância MongoDB conectada.
O exemplo a seguir acessa uma coleção denominada "testCollection" de um MongoDatabase
:
MongoDatabase database = mongoClient.getDatabase("testDatabase"); MongoCollection<Document> collection = database.getCollection("testCollection");
Dica
Se o nome da coleção fornecido ainda não existir no banco de dados, o MongoDB criará implicitamente a coleção quando você inserir os dados pela primeira vez nessa coleção.
Criar uma coleção
Use o método createCollection() de uma MongoDatabase
instância do para criar uma coleção em um banco de dados de dados de sua instância MongoDB conectada.
O exemplo a seguir cria uma coleção chamada "exampleCollection":
database.createCollection("exampleCollection");
Você pode especificar opções de coleta, como tamanho máximo e regras de validação de documento, usando as opções CreateCollectionOptions aula. O método createCollection()
aceita uma instância de CreateCollectionOptions
como um segundo parâmetro opcional.
Validação do documento
A validação de documentos oferece a capacidade de validar documentos em relação a uma série de filtros durante as gravações em uma collection. Você pode especificar esses filtros usando as opções de validação classe, que aceita uma série de filtros que especifica as regras e expressões de validação:
ValidationOptions collOptions = new ValidationOptions().validator( Filters.or(Filters.exists("commander"), Filters.exists("first officer"))); database.createCollection("ships", new CreateCollectionOptions().validationOptions(collOptions));
Para obter mais informações, consulte a documentação do servidor para validação de documentos.
Obter uma lista de coleções
Você pode executar uma consulta de uma lista de coleções em um banco de dados utilizando MongoDatabase.listCollectionNames() :
for (String name : database.listCollectionNames()) { System.out.println(name); }
Solte uma coleção
Você pode remover uma coleção do banco de dados usando o método MongoCollection.drop() :
MongoCollection<Document> collection = database.getCollection("bass"); collection.drop();
Aviso
Eliminar uma coleção exclui todos os dados da coleção
Descartar uma collection do seu banco de dados também exclui permanentemente todos os documentos e todos os índices dessa collection. Somente descarte collections que contenham dados que não são mais necessários.
Especifique o read preference, read concern e write concern
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.
MongoDatabase
instâncias herdam suas configurações de write concern, read concern e write preference do MongoClient
usado para criá-las. instâncias MongoCollection
herdam suas configurações de write concern, read concern e write preference do MongoDatabase
usado para criá-las. No entanto, você pode usar os seguintes métodos para obter uma instância de um MongoDatabase
ou MongoCollection
com uma read preference, read concern ou write preference que difere da configuração que elas normalmente herdariam:
Dica
Os métodos withReadConcern()
, withReadPreference()
e withWriteConcern
criam uma nova instância de um MongoDatabase
ou MongoCollection
com a preferência ou preocupação desejada. O MongoDatabase
ou MongoCollection
sobre o qual o método é chamado mantém suas configurações originais de preferência e preocupação.
Para obter mais informações, consulte a documentação do servidor sobre preferências de leitura, Preocupações de leitura e preocupações de gravação.