DEV Community

Cover image for Teste de edicao 1
Allisson Lima
Allisson Lima

Posted on • Originally published at encrypted-tbn0.gstatic.com

Teste de edicao 1

BSON and MongoDB internals

  • BSON is how MongoDB stores documents on disk.
  • BSON is how MongoDB communicates between client and server.
  • Indexes, metadata, and replication all operate on BSON.

Our Java driver handles the BSON encoding and decoding transparently. But if we're building performance-sensitive applications or exploring custom serialization, or we’re even just curious, it's worth understanding.

Setup and project structure

In order to follow along with the code, make sure you have Java 24 and Maven installed. You will also need a MongoDB cluster set up. A MongoDB M0 free-forever tier is perfect for this.

  1. Project structure:

    /src
      └── main
          └── java
              └── com
                  └── mongodb
                      ├── Main.java
                      ├── User.java
                      └── Address.java
    pom.xml
    
  2. Maven dependency (pom.xml):

    <dependencies>
        <dependency>  
            <groupId>org.mongodb</groupId>  
            <artifactId>mongodb-driver-sync</artifactId>  
            <version>5.4.0</version>  
        </dependency>
    </dependencies>
    

BSON data types and document creation

In MongoDB’s Java driver, we can interact directly with BSON types using classes like BsonString, BsonInt32, and BsonObjectId. However, we rarely do this. Instead, we work with standard Java types, and MongoDB automatically handles the conversion to BSON.

Here’s a look at BSON-specific types:

Top comments (0)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.