gpt4 book ai didi

java - 连接到不存在的 mongodb 服务器不会抛出异常

转载 作者:可可西里 更新时间:2023-11-01 09:57:19 25 4
gpt4 key购买 nike

我正在研究 Java 的 MongoDB 驱动程序。所以我刚刚创建了一个简单的应用程序来连接到 MongoDB 服务器并选择一个数据库。
所以我创建了一个 MongoClient 实例并选择了一个“DB”:

try
{
MongoClient client = new MongoClient("localhost", 27017);
DB database = client.getDB("example");
}catch(Exception e){
e.printStackTrace();
}

因为我的机器上没有正在运行的 mongod 实例,我预计 client 会抛出一个 Exception。不幸的是,情况并非如此。
即使选择数据库也没有任何反应。它的行为就像有一个正在运行的 mongod 实例。

我查看了有关 Java 驱动程序的文档,但找不到任何相关信息。与谷歌相同。
我错过了什么吗?

我使用的是官方网站上最新的 MongoDB 驱动程序(版本 2.12.2)。

最佳答案

这是预期的行为。除非需要,否则驱动程序不会尝试连接到数据库。如果您尝试使用 mongo shell,如果数据库不存在,您不会收到错误。

当您尝试将文档插入到一个不存在的集合中时,它会自动为您创建,这就是延迟建立连接的时候。当您实际执行某些数据库操作(find()insert() 等)时,首先会检查连接。

关于java - 连接到不存在的 mongodb 服务器不会抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24616695/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com