java - 建议使用以下哪种方法来使用 Java 连接 MongoDB?

标签 java mongodb

方法一:

Mongo mongo = new Mongo();
DB db = mongo.getDB("db");
DBCollection collection = db.getCollection("collection");

方法2:

MongoClient client = new MongoClient("localhost", 27017);
MongoDatabase db = client.getDatabase("db");
MongoCollection<Document> collection = db.getCollection("collection");

哪种方法是首选方法?为什么?这两种方法各有什么优点?

最佳答案

类(class)MongoMongoClient 取代并且可能会在未来版本中被弃用。

这意味着您应该使用 MongoClient。

主要区别在于默认的写入关注点。 Mongo 默认为未确认,而 MongoClient 默认为已确认。但即使您希望将未确认的写入问题设置为默认值,您仍然应该将 MongoClient 与适当的 MongoClientOptions 一起使用。对象,以确保当 Java 驱动程序的 future 版本删除 Mongo 类时您的应用程序仍然可以构建。

此外,MongoClient 还允许您访问经过彻底修改的 API MongoDatabase而不是DBMongoCollection<TDocument>而不是DBCollection您可能会发现它可以让您编写更具可读性的代码。

关于java - 建议使用以下哪种方法来使用 Java 连接 MongoDB?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32914668/

相关文章:

java - null 在此代码中如何工作?

java - 如何使用 sbt 触发源生成

java - 是否可以使用纯 HTTP 来评估 Jackrabbit 存储库?

PHP Mongo 聚合匹配正则表达式

java - 如何将 PrimeFaces SelectOneMenu ItemLabel 和 ItemValue 与列表一起使用?

java - 如何从 PHP 使用 Java 程序?

php - 如何在 laravel mongodb 上使用 "not like"?

javascript - 以 AngularJS 的方式向 MongoLab 添加一个新的模型字段

python - PyMongo 在大量查询后引发 [errno 49] 无法分配请求的地址

python - 仅初始化 mongo 副本集一次