CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/maven-org-mongodb--mongo-java-driver

MongoDB Java Driver legacy all-in-one JAR providing comprehensive database connectivity for Java applications with synchronous APIs, CRUD operations, aggregation, GridFS, change streams, and authentication support

Pending
Overview
Eval results
Files

configuration.mddocs/

Configuration & Options

Client configuration options for connection pooling, read/write preferences, timeouts, and codec registries to optimize MongoDB driver behavior.

Capabilities

MongoClientOptions

public final class MongoClientOptions {
    public static Builder builder();
    
    public int getConnectionsPerHost();
    public int getConnectTimeout();
    public int getSocketTimeout();
    public ReadPreference getReadPreference();
    public WriteConcern getWriteConcern();
    public ReadConcern getReadConcern();
    
    public static final class Builder {
        public Builder connectionsPerHost(int connectionsPerHost);
        public Builder connectTimeout(int connectTimeout);
        public Builder socketTimeout(int socketTimeout);
        public Builder readPreference(ReadPreference readPreference);
        public Builder writeConcern(WriteConcern writeConcern);
        public Builder readConcern(ReadConcern readConcern);
        public MongoClientOptions build();
    }
}

// Read preferences
public abstract class ReadPreference {
    public static ReadPreference primary();
    public static ReadPreference secondary();
    public static ReadPreference secondaryPreferred();
    public static ReadPreference nearest();
    public static ReadPreference primaryPreferred();
}

// Write concerns  
public class WriteConcern {
    public static final WriteConcern ACKNOWLEDGED;
    public static final WriteConcern UNACKNOWLEDGED;
    public static final WriteConcern MAJORITY;
    public static final WriteConcern W1;
    public static final WriteConcern W2;
    public static final WriteConcern W3;
    
    public WriteConcern(int w);
    public WriteConcern(String w);
    public WriteConcern withJournal(Boolean journal);
    public WriteConcern withWTimeout(long wTimeout, TimeUnit timeUnit);
}

// Read concerns
public final class ReadConcern {
    public static final ReadConcern DEFAULT;
    public static final ReadConcern LOCAL;
    public static final ReadConcern AVAILABLE;
    public static final ReadConcern MAJORITY;
    public static final ReadConcern LINEARIZABLE;
    public static final ReadConcern SNAPSHOT;
    
    public String getLevel();
    public boolean isServerDefault();
}

// Connection string
public class ConnectionString {
    public ConnectionString(String connectionString);
    
    public String getConnectionString();
    public List<String> getHosts();
    public String getDatabase();
    public String getCollection();
    public String getUsername();
    public char[] getPassword();
    public ReadPreference getReadPreference();
    public WriteConcern getWriteConcern();
    public ReadConcern getReadConcern();
    public String getApplicationName();
}

// Driver information for libraries
public final class MongoDriverInformation {
    public static Builder builder();
    public static Builder builder(MongoDriverInformation mongoDriverInformation);
    
    public static final class Builder {
        public Builder driverName(String driverName);
        public Builder driverVersion(String driverVersion);
        public Builder driverPlatform(String driverPlatform);
        public MongoDriverInformation build();
    }
}

// Modern client settings (recommended)
public final class MongoClientSettings {
    public static Builder builder();
    
    public ReadPreference getReadPreference();
    public WriteConcern getWriteConcern();
    public ReadConcern getReadConcern();
    public CodecRegistry getCodecRegistry();
    public String getApplicationName();
    
    public static final class Builder {
        public Builder applyConnectionString(ConnectionString connectionString);
        public Builder readPreference(ReadPreference readPreference);
        public Builder writeConcern(WriteConcern writeConcern);
        public Builder readConcern(ReadConcern readConcern);
        public Builder codecRegistry(CodecRegistry codecRegistry);
        public Builder applicationName(String applicationName);
        public MongoClientSettings build();
    }
}

Connection String Configuration

Connection strings provide a convenient way to configure MongoDB client settings including authentication, read preferences, and connection options.

Usage Examples:

import com.mongodb.ConnectionString;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoClient;

// Basic connection
ConnectionString connString = new ConnectionString("mongodb://localhost:27017/mydb");
MongoClient client = MongoClients.create(connString);

// With authentication and options
ConnectionString authConnString = new ConnectionString(
    "mongodb://user:password@localhost:27017/mydb?authSource=admin&readPreference=secondary"
);
MongoClient authClient = MongoClients.create(authConnString);

// Replica set connection
ConnectionString replicaString = new ConnectionString(
    "mongodb://host1:27017,host2:27017,host3:27017/mydb?replicaSet=myReplSet"
);
MongoClient replicaClient = MongoClients.create(replicaString);

Client Settings Configuration

Programmatic configuration using MongoClientSettings for more complex setups.

Usage Examples:

import com.mongodb.MongoClientSettings;
import com.mongodb.ReadPreference;
import com.mongodb.WriteConcern;
import java.util.concurrent.TimeUnit;

MongoClientSettings settings = MongoClientSettings.builder()
    .applyConnectionString(new ConnectionString("mongodb://localhost:27017"))
    .readPreference(ReadPreference.secondaryPreferred())
    .writeConcern(WriteConcern.MAJORITY.withWTimeout(5, TimeUnit.SECONDS))
    .applicationName("MyApplication")
    .build();

MongoClient client = MongoClients.create(settings);

Install with Tessl CLI

npx tessl i tessl/maven-org-mongodb--mongo-java-driver

docs

aggregation.md

authentication-security.md

bson-types.md

change-streams.md

collection-operations.md

configuration.md

connection-management.md

database-operations.md

gridfs.md

index.md

query-building.md

sessions-transactions.md

tile.json