MongoDB学习日记 - java代码(二):建立连接

这篇博客记录了使用Java连接MongoDB的过程,包括建立连接、连接属性如replicaSet和maxPoolSize的设置,以及连接到数据库和集合的操作。提供了简化代码示例,并提醒MongoDB默认无认证,但启用安全认证的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这里的示例代码都是简要代码,详细代码可以参考我打包好的代码,地址:百度云 mongo-demo.rar

连接到客户端:

/**
     * MongoDB 连接到客户端示例
     * 
     * 之前版本的 Mongo mongo = new Mongo() 已经不建议使用了 
     */
    public MongoClient connect() {
        // 方法一:
        MongoClient mongoClient_1 = new MongoClient();
        // 方法二:
        MongoClient mongoClient_2 = new MongoClient("localhost");
        // 方法三:
        MongoClient mongoClient_3 = new MongoClient("localhost", 27017);
        // 方法四:
        MongoClient mongoClient_4 = new MongoClient(
                Arrays.asList(
                        new ServerAddress("localhost", 27017),
                        new ServerAddress("localhost", 27018),
                        new ServerAddress("localhost", 27019)
                        ));
        // 方法五:
        MongoClientURI uri = new MongoClientURI(
                      "mongodb://localhost:27017,localhost:27018,localhost:27019");
        MongoClient mongoClient_5 = new MongoClient(uri);
        // 方法六:
        uri = new MongoClientURI("mongodb://localhost:27017",   
                      MongoClientOptions.builder().cursorFinalizerEnabled(false));
        MongoClient mongoClient_6 = new MongoClient();
        // 关闭客户端
        mongoClient_6.close();
        return mongoClient_1;
    }

还有很多种这里就不一一示范了。需要注意的是 MongoDB 默认不启用授权认证,只要能连接到该服务器,就可连接到 mongod。若要启用安全认证,需要更改配置文件参数auth,之前的日记没有讲授权认证,之后会专门针对授权认证进行讲解。

另外,还可以设置连接属性:mongodb://host:27017/?replicaSet=rs0&maxPoolSize=200其中 replicaSet 是数据库复制的设置,可以去看看,maxPoolSize 是数据库连接池的大小。

可以输出打印下看看信息:

System.out.println(mongoClient_1);

Mongo{options=MongoClientOptions{description='null', readPreference=primary, writeConcern=WriteConcern{w=1, wtimeout=0, fsync=false, j=false, ...}}

连接到数据库:

MongoClient client = new MongoClient();
MongoDatabase database = client.getDatabase(databaseName);

这里有另一个方法 DB db = client.getDB(databaseName),但是已经不建议使用了。

测试是否成功:

database.getName() 

连接到集合:

MongoCollection<Document> collection = databasegetCollection(collectionName); 

collection.getNamespace();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值