Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Formato de datos del documento: BSON

En esta guía, puedes aprender sobre el formato de datos BSON, cómo MongoDB lo utiliza y cómo instalar la librería BSON de forma independiente del driver de Java.

BSON, o JSON binario, es el formato de datos que MongoDB utiliza para organizar y almacenar datos. Este formato de datos incluye todos los tipos de estructuras de datos JSON y también admite otros tipos, incluidas fechas, enteros de diferentes tamaños, valores de ObjectId y datos binarios. Para obtener una lista completa de los tipos admitidos, consulta la página de BSON types en el manual de MongoDB Server.

El formato binario no es legible por humanos, pero puedes utilizar la librería Java BSON para convertirlo a una representación en JSON. Para **aprender** más información sobre la relación entre estos formatos, consulta el artículo JSON y BSON.

El driver Java, que utiliza la librería BSON, permite trabajar con datos BSON utilizando uno de los tipos de objeto Realm que implementan la interfaz BSON. Los siguientes tipos implementan la interfaz BSON:

Esta sección muestra cómo agregar la librería BSON como dependencia a su proyecto. Si agregaste el controlador Java como una dependencia en tu proyecto, puedes omitir este paso ya que la librería BSON ya está incluida como una dependencia requerida del controlador. Para obtener instrucciones sobre cómo agregar el driver Java como una dependencia a su proyecto, consulte la guía Comience con el Driver Java.

Tip

Lista de Materiales

Recomendamos añadir el Bill of Materials (BOM) del driver JVM a tu aplicación para gestionar las versiones de los artefactos del driver. Esto remueve la necesidad de especificar una versión para cualquier paquete individual cubierto por la BOM, simplificando la gestión de dependencias. Para aprender más, consulta la guía Comienza con el controlador Java.

Recomendamos utilizar la herramienta de automatización de construcción Maven o Gradle para gestionar las dependencias de su proyecto. Selecciona entre las siguientes pestañas para ver la declaración de dependencia de esa herramienta:

El siguiente snippet muestra la declaración de dependencia en la dependencies sección de tu archivo pom.xml.

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

El siguiente snippet muestra la declaración de dependencia en el objeto dependencies de tu archivo build.gradle.

dependencies {
compile 'org.mongodb:bson'
}

Si no utilizas una de las herramientas mencionadas anteriormente, puedes incluirla en tu proyecto descargando el archivo JAR directamente desde el repositorio de sonatype.

Esta sección responde preguntas que pueden surgir al utilizar el formato de datos BSON.

Tu aplicación podría arrojar esta excepción si pasas un documento con formato incorrecto a una operación y estás usando el controlador Java v4.7 o anterior.

Nota

En las versiones de controladores v4.8 y posteriores, este mensaje de error fue reemplazado por uno que incluía detalles más específicos sobre lo que estaba formateado incorrectamente.

Por ejemplo, el controlador lanza este error cuando llamas a una operación de actualización y omites incorrectamente el operador de actualización, como se muestra en el siguiente ejemplo de código:

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

Para evitar este error, utiliza la clase de creador para la operación correspondiente. El driver ofrece clases de desarrolladores para crear BSON sintácticamente correcto para operaciones de MongoDB. El ejemplo anterior puede expresarse correctamente usando las clases de desarrolladores, como se muestra en el siguiente ejemplo 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 más sobre las clases de desarrolladores disponibles, consulta la guía de desarrolladores.