问题标签 [mongo-java-driver]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - 使用 JAVA 在 MongoDB 中进行无序批量更新
我有 MongoDB 文档,例如:
{_id:1001, "title":"abc", "author":"xyz"}
为 100 万个此类文档更新作者的最佳方法是什么?我开始了解 MongoDB 中的无序批量更新。如何使用 Mongo 的 Java 驱动程序来实现。
java - 使用java mongo驱动在java中实现mongodb查询
我正在使用下面的 mongo 查询来获取最高温度。任何人都可以帮助如何使用 BasicDBObject
和使用mongo java驱动程序在java中实现DBObject
吗?
java - 如何使用 mongo java 驱动程序设置日志文件?
我有一个 java 程序,它在我的数据库中插入并打印一些日志。
我用 :
我想知道如何配置配置属性日志以选择日志文件。实际上,我的日志只是打印在我的终端上。
提前致谢
mongodb - MongoDb Java 驱动程序 - MongoException$Network:对服务器 localhost:27017 的读取操作失败
我们在上周开始间歇性地收到以下错误。到目前为止,我们无法将这个问题具体追溯到任何事情。有问题的查询是对具有大约 400k 个对象的集合的聚合。我们为不同的客户端运行相同的应用程序,并且它开始发生在超过 400k 标记的客户端上。我直接运行查询,大约花了 1.5 秒。当我们迭代另一个聚合的结果时,发生了同样的异常:
有任何想法吗?
mongodb - 如何有效地对 MongoDB GridFS 进行限制查询
我似乎找不到对包含 n 个文件限制的 MongoDB GridFS 进行查询的有效方法。
这是我尝试过的。
问题在于实际上发生了 21 个查询操作。
首先是实际调用 DBCollection.find() 的 getFileList()。
然后对于每个结果都会发生 findOne() ,最终调用 DBCollection.find({"filename":filename})10
次。
之后,当我在输入流上调用 read 时,它会在所有10
文件的块集合上调用 findOne("files_id":id) 。
我注意到在 GridFS.find() 中它查询文件集合,将每个 DBObject 转换为 GridFSDBFile,并将其 (fs) 变量设置为this
(GridFS)。(所有这些都通过 injectGridFSInstance(Object))
如果 getFileList() 操作也这样做了,那么一切都会好起来的,但它只是返回一个标准游标。您可以将 DBObject 强制转换为 GridFSDBFile,但是当您尝试在 InputStream 上调用 read 时,它会抱怨没有定义 GridFS 实例,因此没有获取数据块所需的信息。
我希望能够设置 fs 变量,但它是私有的。
底线:
有没有办法在 GridFS 上进行查询,其中包含一个 .limit(n) ,而不必将查询操作的数量加倍。
java - 使用 MongoDB Java 3.0 驱动程序批量更新
在早期版本的 MongoDB Java 驱动程序中,要运行查询并对结果进行无序批量 upsert,我们所做的就是:
但是在第 3 版中,随着 Bson 文档支持和 MongoCollection.bulkWrite() 方法的引入,如何做到这一点?
我试过这个:
但是,我需要 upsert 功能。
谢谢。
java - MongoDB 聚合结果作为嵌套 Json
这是我的 MongoDB 集合的一部分:
. . 而且,它去了。
我需要做的是对于每个唯一的“id”,获取所有“i”、“x”和“info.j”的总和。我完全可以做到:
输出为:
到目前为止,一切看起来都很完美。除了,我不能像在原始集合中一样将输出中的“j”作为嵌套对象保留在“info”中。我能做些什么 ?
谢谢。
java - MongoDb BSON 以 UTC 时间存储日期
如果我尝试将日期字段放入文档 (BSON) 并将其写入 Mongo,BSON 会以 UTC 格式写入。例如,一个日期
将被存储为
在蒙古。而且,如果我使用相同的 Java 驱动程序检索它,我会得到它
伟大的。没有解决办法吗?我的意思是,为什么我不能按我的意愿存储我的日期?如果我需要从另一个时区查询数据库怎么办?我会得到不同的结果吗?日期字段是 Mongo 的重要组成部分,周围有丰富的运算符。不过,为什么 Mongo 不提供这种灵活性呢?谢谢
json - 如何以 RDBMS 驱动方式执行 MongoDB 查询
在 RDMS 中,如果我必须执行“从 empid=100 的员工中选择 emp_name”。我会这样做,
我怎样才能在 MongoDB 中执行相同的操作,我得到类似 "Employee.find({'empid:1000'},{emp_name:1}) 的查询
目前这是我正在使用的代码,其中我必须分别编写“where”和“select”部分,我的意思是 dbObj(where) 和 projectdbObj(projecttion Or select part)。
请帮助优化代码。
java - 在 Java 客户端中写入 Mongo 副本集的最低配置
我是吗啡的新手。我正在使用 morphia 和 mongo-java-driver.jar 通过 Java 程序与副本集(集群需要它)进行对话。我写了下面的示例程序:
- 如果我想在所有节点中安全地写入数据,有哪些必要步骤?
- 我需要为副本设置的最低配置是什么?
- 需要什么验证来检查副本集是关闭还是存活,是否可读,如果应用程序或程序找不到主节点,我们如何管理?