问题标签 [mongodb-java]
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.
java - java中mongo数据库中所有集合的列表
如何获取数据库中所有集合的列表?
- 数据库——mongodb;
- 语言——java;
- ide - 日食;
spring - 带有弹簧数据支持和 mongodb 的无休止的副本集连接错误
我正在使用带有副本集的 mongodb 的应用程序中工作。
在我的副本集中,我有 2 个数据库服务器和 1 个仲裁器。我正在按如下方式创建我的 mongo 对象
当所有服务器都启动时,就没有问题,但是当任何一个服务器出现故障时,系统开始通过无尽的错误消息,如下所示
你能帮我解决这个问题吗?
由于我使用的是副本集,如果一台服务器关闭,不应该使用新的主服务器并忽略旧的主服务器吗?
请查找以下图片以检查副本集状态
所有服务器都启动并且 192.168.1.42 是主服务器
192.168.1.42 已关闭(手动终止)并且 192.168.1.187 是新的主(现在发生错误)
192.168.1.42 再次启动并充当辅助服务器(错误消失)
更新:即使记录了错误消息,数据库也可以工作。是否有减少/抑制错误消息的机制?
java - 将数据附加到现有的 gridfs 文件
如我所见,java mongo 驱动程序不提供OutputStream
从现有 gridFS 文件中获取的功能com.mongodb.gridfs.GridFSFile
我必须GridFSInputFile
直接创建或使用gridFs.createFile()
方法。
是缺少 java 驱动程序还是 gridfs 的限制?
除了创建新文件/删除旧文件之外,您能否提出任何解决方法?
谢谢
mongodb - MongoDb 连接被拒绝
这是我第一次尝试使用 MongoDB。我让 Mongo 运行:
错误是由于做
错误:
请注意,我使用127.0.0.1:27017进行连接,它适用于 Mongo shell。另外,我在浏览器中使用http://localhost:28017
.
非常感谢任何和所有的想法!
mongodb-java - MongoDB异步复制中的读取问题
我是 MongoDB 的新手。我使用 MongoDB 作为数据库创建了一个 Java 应用程序。我在一个副本集中配置了 3 台服务器。我的伪代码:{
createUser getUser updateUser
}
这里 createUser 成功创建了用户,但 getUser 有时无法返回该用户。
当我分析它是由于数据复制延迟。
我该如何克服这个问题?
无论如何在创建数据时立即复制数据吗?
有没有其他方法可以让用户成功?
提前谢谢!
mongodb - 当使用 karras 和 clojure 给出字段时,如何更新 MongoDB 中的文档?
我在 MongoDB 中有一个集合,当在 clojure Web 应用程序中使用karras API {A clojure wrapper to the mongo java driver} 在该文档中给出一个字段时,我需要更新其中的某个文档?
我想出了这个解决方案,但是,它并没有像我预期的那样工作。
mydb是我的 MongoDB 中的数据库,而user是我保存一些文档的集合。我需要删除 Document where :name字段与我传递给该delete-rec函数的 rec 映射的: name 字段匹配。
谢谢。
java - 如何使用 Java MongoDB 驱动程序检索字段子集?
新海报在这里,我找到了这篇以前的帖子,但它是在 C# 上的,我尝试直接在 JSP 页面的 java 代码中执行此查询,由于某种原因,它不接受 find() 查询的 {} 中的信息只是给出一个错误......
所以偷看,我如何在 Java 中做到这一点:
谢谢!
PS:为什么 C# 有很好的小 .Exclude() 和 .Include() 命令而 java 没有?哭泣
java - mongoDB 将数据添加到没有 _id 字段的集合
这是我之前关于为副本集设置不同数据的问题的后续,我发现您可以为每个要读取的副本指定一个集合,并且您实际上可以模拟 oplog.rs。
由于这些文件的信息不同,因此副本最终不会收到一条错误消息指出它不同步。
但是,我目前唯一遇到的大问题是当您将数据添加到集合时会自动生成 _id 字段。
有没有办法让我绕过这个 _id 生成并将信息添加到集合中?如果不是,是否将已显示在要添加的文档中的 _id 字段视为文档 _id?
我感谢你的贡献,贡萨洛
PS:再一次,这是 java/jsp 项目的一部分,如果该领域的任何人可以协助执行此操作,请这样做!
java - MongoDB 在没有 morphia 的 Java 中嵌入对象创建。
我对 mongodb 非常陌生,并尝试将其用于开发。我有一个概念模型:
User={"uid":"", "services":"[
{
"serviceid":"sid",
"sub_dat":"somedate",
"exp_date":"somedate",
},
{
"serviceid":"sid",
"sub_dat":"somedate",
"exp_date":"somedate",
},
{
"serviceid":"sid",
"sub_dat":"somedate",
"exp_date":"somedate ",
},
]",
"朋友":"[
{
"friend_id":"",
{
"friend_id":"",
"friendname":"name"
"friendshipyrs":"yrs"
},
]",
}
我想知道在java中使用原始驱动程序而不是morphia遵循的步骤:1.创建这个对象,这样我就有能力:2.获取新服务和朋友并将其附加到服务列表中。
我目前可以添加到顶层,我尝试使用 BasicDBObject、DBList 甚至 ObjectBUilder,但不知道如何附加或推入字段以使用 java 驱动程序创建数组/列表,从10gen 网站上的演示文稿。
此外,希望能够通过单个查询深入说..朋友信息,那么是否建议维护上述结构或将朋友创建为一个类并将类对象放入列表中?我知道点运算符,但我不知道如何通过 java 驱动程序访问类字段。
将非常感谢任何帮助...谢谢
mongodb - 通过慢速 Internet 连接设置 MongoDB 副本
这是我的问题:
我有一个 MongoDB 副本集,我将不得不在极慢的连接(主要是内非洲等)上使用它,我想知道这里的其他人是否经历过类似的事情?
如果是这样,你能告诉我这样一条线上的复制能力是多少吗?
如果没有,你能给我估计吗?
我很快就会对其进行测试,但我真的更愿意做好准备,我知道它不会比 MySQL 慢...
感谢您的回复。