问题标签 [mongo-scala-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 - Mongo Scala Driver 2.1 - 案例类错误
这是我第一次使用 Mongo Scala 驱动程序(2.1 版),我注意到在处理我的一些案例类时出现了奇怪的行为——其中一些在classToCaseClassMap
解码数据时没有被识别为其中一个走错了路,并以java.util.NoSuchElementException: head of empty list
第 204 行的错误结束,org.mongodb.scala.bson.codecs.macrocodecs.MacroCodec
因为fieldClazzTypeArgs
列表为空。
这是堆栈跟踪的前三分之一左右:
我的应用程序模拟某人的 Google 日历。这是我的案例课程:
这是一个屏幕截图的链接,显示了classToCaseClassMap
错误发生时的内容。
屏幕截图显示了一个包含六个项目的地图,包括我的四个案例类:GoogleCalendarEvent
、GoogleWho
、GoogleDateTime
和GoogleEventExtendedProperties
。只有第一个 ( GoogleCalendarEvent
) 被正确识别为案例类。
我尝试制作有问题的课程sealed
,但这没有帮助。
以下是我创建 CodecRegistry 的方法:
这是显示数据访问代码以及我如何使用它的要点(在 sbt 控制台或 Intellij IDEA Scala 控制台中)。
我正在重构的应用程序在 Reactive Mongo 版本 0.11.7 上运行良好,但我们需要将其迁移到官方支持的 Mongo Scala 驱动程序才能使用新的 Atlas 数据库。
mongodb - 具有非默认 akka 执行上下文的 Mongo scala 驱动程序 2.0
我已经开始在我们的 scala akka-http 项目中使用 mongo scala 驱动程序,它有很大的帮助,尤其是 v2.0.0 中的案例类支持非常好。我试图围绕如何使用具有非默认执行上下文的mongo scala驱动程序来使用observeOn。
由于我们的 java 库依赖项的性质,我使用阻塞调用从 MongoDB 获取结果,如此处所示Helpers。我已经使用如下所示的 observeOn 稍微修改了 MongoDB Helpers的结果和 headResult 函数,但我注意到一些奇怪的竞争条件,我不知道如何解决。
结果函数不会返回我期望的所有记录,并且每次行为都不同,除非我使用只允许一个线程的 akka PinnedDispatcher 。由于它是一个阻塞操作,我想使用一个非默认的 akka 调度程序,这样它就不会阻塞我的 HTTP 请求。如果有人可以帮助我,我真的很感激。
我的示例数据库客户端代码:
mongodb - 使用 Mongo Scala 驱动程序宏读取具有附加嵌套字段的文档
是否可以使用mongo-scala-driver 宏从 mongo db 中读取包含案例类中指定字段的附加字段的文档?
我希望在反序列化时忽略案例类中未指定但在文档中指定的字段。但是会抛出异常。由于 mongo db 的模式较少的方法,不可能指定案例类中的总字段集。
我要反序列化的文档看起来像这样的 json:
我希望以下最小示例可以工作:
但是会抛出以下异常:
有没有办法解决已解决的问题?
mongodb - 如何在 java/scala 中使用 inc 运算符创建 Decimal128 字段
我有以下文档结构:
我想要什么:当不存在的字段增加时,使用
NumberDecimal
值创建该字段。
我用 scala 驱动程序尝试过,但不能这样做:
因为Updates.inc(k,v)
需要Number
; Decimal128
不是Number
我认为问题不在驱动程序上,而在我的逻辑上。
如何使用 scala/java 驱动程序实现我的案例?
mongodb - Scala脚本等待mongo完成任务
我正在编写一个简单的基于 scala 的脚本,它应该将一些数据插入到 Mongo 集合中。问题是,该脚本在 mongo 完成它的任务之前退出。考虑以下脚本,处理该问题的惯用/最佳方法是什么:
上面的脚本在执行时会产生以下错误:
但是,如果我Thread.sleep(3000)
最后添加它就可以了。
mongodb - 如何使用 mongo-scala-driver 保存 Set?
我尝试使用 Set 类型的字段保存案例类。像这样的东西:
当我从 db 获取 MyObject 时,出现此错误:
蒙哥版本:
知道如何强制设置类型为 mongo 驱动程序吗?
mongodb - Mongo Scala 驱动程序 - 无法插入数据库
我正在练习一个需要数据库连接的项目,我正在使用 Play Framework 结合 Scala 和 MongoDB。
我也在使用 Mongo-scala-driver 并遵循文档。我写了完全相同的代码:
没有任何东西被插入到数据库中,我从日志中得到的唯一结果是:
我一直在寻找类似主题的stackoverflow,但我发现的所有内容都对我不起作用。
json - 如何解析对象数组使其适合 Bson 文档 - Mongo Scala 驱动程序
我正在使用 Scala、Play 框架和 Mongo scala 驱动程序来设置数据库。我有 json 数据来了,我想将它设置在数据库中,但我不知道如何格式化对象数组以便可以传递它。
这是 Json :
如您所见,“assoc”是一个对象数组。对于我所做的所有其他领域:
如何在 Bson 文档中将其解析为可接受的?
json - 如何将文档解析为 Json - Mongo scala 驱动程序
我正在使用 play 框架和 mongo scala 驱动程序来设置数据库,我需要将查询结果解析到 Json 以将其发送到前端:
如何解析其结果?