mongoDB大数据——java集成mongodb单机与集群

15 篇文章 0 订阅
15 篇文章 0 订阅

目录

1、java集成mongodb基础知识:

2、Java驱动与mongodb版本关系表:

3、Java驱动与jdk版本关系表:

4、Java集成mongodb单机:

(1)legacy客户端:

A、添加jar驱动:

B、创建客户端:

(2)sync客户端(推荐使用):

A、添加jar驱动:

B、创建客户端:

5、Java集成mongodb副本集:

(1)legacy客户端:

A、添加jar驱动:

B、创建客户端:

(2)sync客户端(推荐使用):

A、添加jar驱动:

B、创建客户端:

6、Java集成mongodb分片集群:

(1)legacy客户端:

A、添加jar驱动:

B、创建客户端:

(2)sync客户端(推荐使用):

A、添加jar驱动:

B、创建客户端:


 

说明一:java连接mongodb官方文档:

https://docs.mongodb.com/ecosystem/drivers/java/

说明二:java连接mongodb官方创建客户端文档:

http://mongodb.github.io/mongo-java-driver/3.10/driver/tutorials/connect-to-mongodb/

说明三:java连接mongodb官方驱动选择文档:

http://mongodb.github.io/mongo-java-driver/3.10/driver/getting-started/installation/

1、java集成mongodb基础知识:

Mongodb版本是3.7以前使用MongoClient()创建客户端;

Mongodb版本是3.7以后使用 MongoClients.create()创建客户端;

Mongodb中用户是属于某个数据库的,并不是公共通用的用户。

Java集成mongodb必须的东西:

运行的mongodb数据库、mongodb驱动jar包、mongodb客户端。

Java集成mongodb的驱动jar有以下4类:

第一类:mongodb-driver-sync(推荐使用)

这种jar包,是mongodb官网在3.7版本以后推荐使用的驱动包。只需要添加这一个jar包即可。

第二类:mongodb-driver-legacy

这种jar驱动,是旧版本3.7以前的数据库创建客户端对应的驱动,在3.7以后的高版本数据库中也支持,但是3.7以高版本数据库不使用此驱动包。并且如果使用此驱动包,还需要添加依赖包:bson、mongodb-driver-core。

第三类:mongodb-driver

这种jar驱动,mongodb管网已经放弃了,并且在4.0及以后版本的数据库中将不会发布此驱动。

第四类:mongo-java-driver

这种jar驱动,mongodb管网已经放弃了,并且在4.0及以后版本的数据库中将不会发布此驱动。

2、Java驱动与mongodb版本关系表:

Java Driver Version

MongoDB

4.0

MongoDB

3.6

MongoDB

3.4

MongoDB

3.2

MongoDB

3.0

MongoDB

2.6

Version 3.10

Version 3.9

Version 3.8

Version 3.7

 

Version 3.6

 

Version 3.5

 

 

Version 3.4

 

 

Version 3.3

 

 

 

Version 3.2

 

 

 

Version 3.1

 

 

 

 

Version 3.0

 

 

 

 

Version 2.14

 

 

 

[*]

Version 2.13

 

 

 

 

Version 2.12

 

 

 

 

 

3、Java驱动与jdk版本关系表:

Java Driver Version

Java 5

Java 6

Java 7

Java 8

Java 11 [+]

Version 3.10

 

Version 3.9

 

Version 3.8

 

Version 3.4

 

Version 3.3

 

Version 3.2

 

Version 3.1

 

Version 3.0

 

Versions >= 2.7

4、Java集成mongodb单机:

(1)legacy客户端:

A、添加jar驱动:

需要添加:mongodb-driver-legacy、bson、mongodb-driver-core三个jar包。

<dependencies>

    <dependency>

        <groupId>org.mongodb</groupId>

        <artifactId>mongodb-driver-legacy</artifactId>

        <version>3.10.1</version>

</dependency>

<dependency>

    <groupId>org.mongodb</groupId>

    <artifactId>bson</artifactId>

    <version>3.10.1</version>

</dependency>

<dependency>

    <groupId>org.mongodb</groupId>

    <artifactId>mongodb-driver-core</artifactId>

    <version>3.10.1</version>

</dependency>

</dependencies>

B、创建客户端:

/**
     * 创建单机客户端
     */
    public static MongoClient getStandaloneClient(){
        MongoClientOptions options = MongoClientOptions.builder().sslEnabled(true).build();
        MongoClient mongoClient = new MongoClient(new ServerAddress("127.0.0.1", 27017),
                options);
        return mongoClient;
    }

(2)sync客户端(推荐使用):

A、添加jar驱动:

<dependencies>

    <dependency>

        <groupId>org.mongodb</groupId>

        <artifactId>mongodb-driver-sync</artifactId>

        <version>3.10.1</version>

    </dependency>

</dependencies>

B、创建客户端:

/**
     * 创建单机客户端
     */
    public static MongoClient getStandaloneClient(){
        ConnectionString connString = new ConnectionString(
                "mongodb://root:123456@127.0.0.1:27017/admin"
        );
        MongoClientSettings settings = MongoClientSettings.builder()
                .applyConnectionString(connString)
                .retryWrites(true)
                .build();
        MongoClient mongoClient = MongoClients.create(settings);
        return mongoClient;
    }

5、Java集成mongodb副本集:

(1)legacy客户端:

A、添加jar驱动:

需要添加:mongodb-driver-legacy、bson、mongodb-driver-core三个jar包。

<dependencies>

    <dependency>

        <groupId>org.mongodb</groupId>

        <artifactId>mongodb-driver-legacy</artifactId>

        <version>3.10.1</version>

</dependency>

<dependency>

    <groupId>org.mongodb</groupId>

    <artifactId>bson</artifactId>

    <version>3.10.1</version>

</dependency>

<dependency>

    <groupId>org.mongodb</groupId>

    <artifactId>mongodb-driver-core</artifactId>

    <version>3.10.1</version>

</dependency>

</dependencies>

B、创建客户端:

/**
     * 创建副本集客户端
     */
    public static MongoClient getReplicateSetClient(){
        MongoClientOptions options = MongoClientOptions.builder().sslEnabled(true).build();
        MongoClient mongoClient = new MongoClient(
                Arrays.asList(
                        new ServerAddress("127.0.0.1", 27017),
                        new ServerAddress("127.0.0.1", 27018),
                        new ServerAddress("127.0.0.1", 27019)
                ),
                options);//此处ip和端口号为副本集群中所有主、备节点的IP和端口号,可以自动实现负载均衡、高可用
        return mongoClient;
    }

(2)sync客户端(推荐使用):

A、添加jar驱动:

<dependencies>

    <dependency>

        <groupId>org.mongodb</groupId>

        <artifactId>mongodb-driver-sync</artifactId>

        <version>3.10.1</version>

    </dependency>

</dependencies>

B、创建客户端:

/**
     * 创建副本集客户端
     */
    public static MongoClient getReplicateSetClient(){
        ConnectionString connString = new ConnectionString(
                "mongodb://127.0.0.1:27017,127.0.0.1:27018,127.0.0.1:27019/?replicaSet=lsy"
        );//此处ip和端口号为副本集群中所有主、备节点的IP和端口号,可以自动实现负载均衡、高可用
        MongoClientSettings settings = MongoClientSettings.builder()
                .applyConnectionString(connString)
                .retryWrites(true)
                .build();
        MongoClient mongoClient = MongoClients.create(settings);
        return mongoClient;
    }

6、Java集成mongodb分片集群:

(1)legacy客户端:

A、添加jar驱动:

需要添加:mongodb-driver-legacy、bson、mongodb-driver-core三个jar包。

<dependencies>

    <dependency>

        <groupId>org.mongodb</groupId>

        <artifactId>mongodb-driver-legacy</artifactId>

        <version>3.10.1</version>

</dependency>

<dependency>

    <groupId>org.mongodb</groupId>

    <artifactId>bson</artifactId>

    <version>3.10.1</version>

</dependency>

<dependency>

    <groupId>org.mongodb</groupId>

    <artifactId>mongodb-driver-core</artifactId>

    <version>3.10.1</version>

</dependency>

</dependencies>

B、创建客户端:

/**
     * 创建分片集群客户端
     */
    public static MongoClient getShardedClient(){
        MongoClientOptions options = MongoClientOptions.builder().sslEnabled(true).build();
        MongoClient mongoClient = new MongoClient(
                Arrays.asList(
                        new ServerAddress("127.0.0.1", 27017),
                        new ServerAddress("127.0.0.1", 27018),
                        new ServerAddress("127.0.0.1", 27019)
                ),
                options);//此处ip和端口号为分片集群的mongos(router)路由的ip和端口号,可以自动实现负载均衡、高可用
        return mongoClient;
    }

(2)sync客户端(推荐使用):

A、添加jar驱动:

<dependencies>

    <dependency>

        <groupId>org.mongodb</groupId>

        <artifactId>mongodb-driver-sync</artifactId>

        <version>3.10.1</version>

    </dependency>

</dependencies>

B、创建客户端:

/**
     * 创建分片集群客户端
     */
    public static MongoClient getShardedClient(){
        ConnectionString connString = new ConnectionString(
                "mongodb://127.0.0.1:27017,127.0.0.1:27018,127.0.0.1:27019"
        );//此处ip和端口号为分片集群的mongos(router)路由的ip和端口号,可以自动实现负载均衡、高可用
        MongoClientSettings settings = MongoClientSettings.builder()
                .applyConnectionString(connString)
                .retryWrites(true)
                .build();
        MongoClient mongoClient = MongoClients.create(settings);
        return mongoClient;
    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值