Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

Formato de dados do documento: BSON

Neste guia, você aprenderá sobre o formato de dados BSON, como o MongoDB o usa e como instalar a biblioteca BSON independentemente do driver Java.

BSON, ou Binary JSON, é o formato de dados que o MongoDB usa para organizar e armazenar dados. Este formato de dados inclui todos os tipos de estrutura de dados JSON e também oferece suporte a outros tipos, incluindo datas, inteiros de tamanhos diferentes, valores ObjectId e dados binários. Para obter uma lista completa dos tipos compatíveis, consulte a página BSON Types no manual do MongoDB Server.

O formato binário não é legível em humanos, mas você pode utilizar a biblioteca Java BSON para convertê-lo em uma representação JSON. Para aprender mais sobre o relacionamento entre esses formatos, consulte o artigo JSON e BSON.

O driver Java, que usa a biblioteca BSON, permite trabalhar com dados BSON usando um dos tipos de objeto de Realm que implementa a interface BSON. Os seguintes tipos implementam a interface BSON:

Esta seção mostra como adicionar a biblioteca BSON como uma dependência ao seu projeto. Se você adicionou o driver Java como uma dependência ao seu projeto, poderá pular esta etapa, pois a biblioteca BSON já está incluída como dependência obrigatória do driver. Para instruções sobre como adicionar o driver Java como uma dependência ao seu projeto, consulte o guia Introdução ao driver Java.

Dica

Lista de materiais

Recomendamos adicionar a lista de materiais (BOM) do driver JVM ao seu aplicativo para gerenciar as versões dos artefatos do driver. Isso remove a necessidade de especificar uma versão para qualquer pacote individual coberto pelo BOM, simplificando o gerenciamento de dependências. Para aprender mais, consulte o guia Introdução ao driver Java.

Recomendamos que você use a ferramenta de automação de construção Maven ou Gradle para gerenciar as dependências do seu projeto. Selecione uma das seguintes abas para visualizar a declaração de dependência dessa ferramenta:

O seguinte trecho de código mostra a declaração de dependência na seção dependencies do seu arquivo pom.xml.

<dependencies>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>bson</artifactId>
</dependency>
</dependencies>

O seguinte trecho mostra a declaração de dependência no objeto dependencies em seu arquivo build.gradle .

dependencies {
compile 'org.mongodb:bson'
}

Se você não estiver usando uma das ferramentas anteriores, poderá incluí-la em seu projeto baixando o arquivo JAR diretamente do repositório sonatype.

Esta seção responde a perguntas que podem surgir ao usar o formato de dados BSON.

Seu aplicação poderá lançar essa exceção se você passar um documento formatado incorretamente para uma operação e estiver usando o Java driver v4.7 ou anterior.

Observação

Nas versões v4.8 e posterior do driver, essa mensagem de erro foi substituída por uma que inclui detalhes mais específicos sobre o que foi formatado incorretamente.

Por exemplo, o driver lança esse erro quando você chama uma operação de atualização e omite incorretamente o operador de atualização, conforme mostrado no exemplo de código a seguir:

// incorrectly formatted update document
collection.updateOne(
new Document().append("name", "fizz"),
new Document().append("name", "buzz")
);

Para evitar esse erro, use a classe de construtor para a operação apropriada. O driver oferece classes de construtor para criar BSON sintaxe correta para operações MongoDB . O exemplo anterior pode ser expresso corretamente usando as classes de construtor, conforme mostrado no seguinte exemplo de código:

// Builder class imports
import static com.mongodb.client.model.Filters.*;
import static com.mongodb.client.model.Updates.*;
// ...
collection.updateOne(eq("name", "fizz"), set("name", "buzz"));

Para saber mais sobre as classes de construtores disponíveis, consulte o guia Construtores.