聚合查询中的 Mongodb java 展开操作抛出异常

2024-03-09

使用嵌入式 mongo 文档时,我尝试展开数组,但收到类似 org.springframework.data.mapping.model.MappingInstantiationException: Failed to instantiate java.util.List using constructor NO_CONSTRUCTOR with argument 的异常。我写的查询是,

Aggregation agg = newAggregation(
        unwind("recipients"),
 match(Criteria.where("recipients.userId").is("800").andOperator(Criteria.where("recipients.status").is(false)
                )));
  Logs.java
 private String id;
private String userId;
private String conversationId;
 private Date createdDate;
private List<Recipients> recipients;

Recipients.java

 private String userId;
 private boolean status;

Data set

{
"_id" : ObjectId("579099e6000fda45000c0054"),
"userId" : "800",
"conversationId" : "57907e5f000fda45000c004b",
"createdDate" : ISODate("2016-07-21T09:46:14.602Z"),
"recipients" : [
        {
                "userId" : "800",
                "status" : false
        },
        {
                "userId" : "900",
                "status" : false
        }
]
  }
 {
"_id" : ObjectId("579099e9000fda45000c0055"),
"userId" : "530a7998-ba3f-4366-8d21-bb1ca688cfdb",
"conversationId" : "57907e5f000fda45000c004b",
"createdDate" : ISODate("2016-07-21T09:46:17.915Z"),
"recipients" : [
        {
                "userId" : "800",
                "status" : true
        },
        {
                "userId" : "900",
                "status" : false
        }
]
 }
{
"_id" : ObjectId("5790adda000fda2444d6ccdf"),
"userId" : "530a7998-ba3f-4366-8d21-bb1ca688cfdb",
"conversationId" : "578df6cf000fda2640b77c45",
"createdDate" : ISODate("2016-07-21T11:11:22.522Z"),
"recipients" : [
        {
                "userId" : "800",
                "status" : false
        },
        {
                "userId" : "530a7998-ba3f-4366-8d21-bb1ca688cfdb",
                "status" : true
        }
 ]
 }
 {
"_id" : ObjectId("5790adde000fda2444d6cce0"),
"userId" : "530a7998-ba3f-4366-8d21-bb1ca688cfdb",
"conversationId" : "578df6cf000fda2640b77c45",
"createdDate" : ISODate("2016-07-21T11:11:26.479Z"),
"recipients" : [
        {
                "userId" : "800",
                "status" : false
        },
        {
                "userId" : "530a7998-ba3f-4366-8d21-bb1ca688cfdb",
                "status" : true
        }
]
 }

如果聚合的结果是这样的 Logs 对象列表

AggregationResults<Logs> results = mongoOps.aggregate(agg, "logs", Logs.class);

那么收件人的基数是不正确的。它必须只是一个收件人而不是列表,因为展开后收件人字段保存单个文档。

Logs.java
  private String id;
  private String userId;
  private String conversationId;
  private Date createdDate;
  private Recipients recipients; <--
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

聚合查询中的 Mongodb java 展开操作抛出异常 的相关文章

  • 如何在 NetBeans 中以调试模式单步执行已实现的方法?

    我有课XImpl java它实现了一个接口X java 以及所有它的方法 我调试项目 在执行流程中遇到一个方法X processSomeValue 现在 当我尝试进入该方法时processSomeValue 我无能为力 有什么办法可以让我进
  • 如何制作具有两个索引的 Map?

    我在java中有一张这样的地图 Map
  • 确定列表编号是否连续

    我在 Java 工作 我有一个无序列表 包含 5 个数字 范围从 0 100 没有重复 我想检测其中 3 个数字是否连续且没有间隙 例子 9 12 13 11 10 true 17 1 2 3 5 true 19 22 23 27 55 f
  • 由于WiredTiger.turtle权限,Mongodb无法启动

    我试图在 ubuntu 16 04 上启动 mongodb 4 0 4 但数据库拒绝了我的所有尝试 我检查了 mongodb 日志文件 发现名为 WiredTiger turtle 的文件没有所需的权限 这里记录错误 2018 11 26T
  • 使用 WebDriver 暂时绕过隐式等待

    当使用隐式等待时 正如这里所建议的 https stackoverflow com a 10950905 56285 我仍然有时想要断言即时元素不可见或不存在 换句话说 我know有些元素应该隐藏 并希望我的测试做出这样的断言fast 而不
  • JCombobox 字符串项(可见)和整数键(固有)

    我有一个数据库模式 它将作为 JTable 列显示在 JCombobox 中以选择名称 但我希望将 ID 字段插入 作为外键 到另一个表中 通常 在下拉列表中选择一个项目 将所选项目带到组合框的显示区域 我想要做的是 当选择组合框中的任何项
  • Java 增强型 For-Loop 比传统的更快?

    所以我的理解是 增强的 for 循环应该更慢 因为它们必须使用迭代器 但是我的代码提供了混合结果 是的 我知道循环逻辑占用了循环中花费的大部分时间 对于少量迭代 100 1000 增强的 for 循环在使用和不使用 JIT 的情况下似乎都要
  • HashMap何时以及如何将桶从链表转换为红黑树? [复制]

    这个问题在这里已经有答案了 我正在研究 java 8 功能 发现当存储桶上的条目集数量增加时 哈希图使用红黑树而不是链表 但是 这是否不需要密钥是可比较的或存在某种密钥排序以及这是如何工作的 这种转变何时真正发生以及如何发生 当有at le
  • Java Sound可以用来控制系统音量吗?

    Java 声音优惠FloatControl各种声音线路功能的实例 以及MASTER GAIN http docs oracle com javase 7 docs api javax sound sampled FloatControl T
  • NodeJS 中的密码重置

    我已经设置使用 NodeJS Passport 更新用户的密码 我遵循了这个很棒的指南 http sahatyalkabov com how to implement password reset in nodejs http sahaty
  • 抽象方法实现与抽象方法重写。这两个对于抽象类意味着相同吗?

    我几乎要采取Java SE 8 程序员我 exam 1Z0 808 我正在使用这个学习指南 https www selikoff net java oca 8 programmer i study guide https www selik
  • Java 中内存高效的稀疏数组

    关于时间高效的稀疏数组存在一些问题 但我正在寻找内存效率 我需要相当于List
  • 如何使用 Tomcat 启用浏览器缓存静态内容(图像、css、js)?

    如何使用 Tomcat 启用浏览器缓存静态内容 图像 css js 首选的解决方案是编辑 spring MVC 配置文件或 web xml 尝试 改变值
  • 无法在android中使用retrofit发出@Post请求

    我正在学习如何在 android 中使用改造 但是每当我尝试从互联网检索数据时 我的应用程序不会返回任何内容我的响应没有成功 我不知道如何修复当前我正在尝试发布的错误并使用此 URL 检索数据https jsonplaceholder ty
  • Spring 非托管 bean 的依赖注入

    我有一个非托管的 JPA 域类 它是通过实例化的new操作员 UserAccount account new UserAccount userRepository save account In my UserAccount类 我有一个be
  • 使用 JPA 存储库保留 Spring Batch ItemWriter 的问题

    我对春季批次有疑问ItemWriter它依赖于 JPA 存储库来更新数据 这里是 Component public class MessagesDigestMailerItemWriter implements ItemWriter
  • 在大画布上滚动

    我需要一些帮助来了解滚动绘制到 Android 画布上的项目的基础知识 假设我想创建一个时间线 其中 0 处的时间是可视化的顶部 并且随着时间的增加 时间线继续呈现在上一个点下方 如果我想在 Android 上渲染它 我知道我可以通过重写
  • 正确的单元测试技术

    在使用 TDD 时 我发现自己需要测试一个包含查找值的常量 最终 哈希图 请查看更新中出现这种情况的原因 见下文 private static final Map
  • Swing:如何创建事件并将其分派给组件?

    我需要将一些事件发送到 Swing 中的组件 因此它的处理方式就像任何用户生成的标准 Swing 事件一样 基本上 类似于宏记录器 然后是 JEditorPane 的执行器 但我需要对生成的事件有更多的控制 所以 假设我有一个编辑 我想 捕
  • java 更新进度条

    我有一个 JFrame 和以下组件 JButton jButton1 Progress Bar ProgressBar 及其公共静态 JLabel 状态及其公共静态 单击按钮时会执行不同的语句 我想在每个语句后更新我的进度条 这是我的代码

随机推荐

  • flutter_bloc 库中的存储库提供程序在推送新路由时不提供存储库

    我正在使用 flutter bloc 库来构建我的应用程序 除了 BlocProvider 之外 我还使用存储库提供程序 因为我将在整个应用程序中广泛使用特定的存储库 但我在上下文方面遇到了问题 下面是我的代码片段 主程序 dart voi
  • 本地球拍

    我正在书中阅读有关本地定义的内容 并且遇到了这个例子 local define f x x 5 define g alon cond empty alon empty else cons f first alon g rest alon g
  • Web Platform Installer 3.0 中的“IIS 7 推荐配置”是什么?

    今天刚安装了新的 IIS Express 看到 Web 平台安装程序也有安装 IIS 7 推荐配置 的选项 但我实际上无法弄清楚它的作用是什么 有人用吗 quote site http forums iis net t 1174703 as
  • Python类实例变量隔离[重复]

    这个问题在这里已经有答案了 我是一名自学成才的程序员 最近在学习Python 我遇到了一个奇怪的问题 但我想这只是我不了解 python 语法和 或程序流程的结果 我有一堂课叫Test这是文件中的TestClass py class Tes
  • 使用 AngularFire,是否可以创建关系型数据库?或者访问 UniqueID?

    I saw 这个帖子 https www firebase com blog 2013 04 12 denormalizing is normal html在 Firebase 的博客上解释了使用其平台创建关系数据对象的最佳方法 我正在努力
  • Chrome 扩展 - onRequest/sendRequest 与 onMessage/sendMessage [重复]

    这个问题在这里已经有答案了 退房这个示例扩展 http src chromium org viewvc chrome trunk src chrome common extensions docs examples api pageActi
  • 如何完全销毁引导模式窗口?

    我已经利用过模态窗口向导实现大约有 4 5 个步骤 我需要在之后彻底摧毁它最后一步 完成时 和OnCancel 步骤 无需刷新页面 我当然可以隐藏它 但是当我再次打开它时 隐藏模式窗口会恢复所有内容 有人能帮我解决这个问题吗 谢谢 任何提示
  • Tkinter 中的进度条,里面有一个标签

    是否可以改进 Tkinter Python 中的进度条 在中间添加标签 例如 读取文件 我试图找到一个优雅的编码解决方案 但没有真正的结果 from Tkinter import import ttk import tkFileDialog
  • Android 将 JSONArray 读入 JSONArray [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我如何读取包含 json 数组的 json 数组 这是我的 json product name myApp config grade
  • selenium 的 PageFactory 类及其与 FindBy Annotation 一起使用时的工作方式

    我有一个问题 当我使用 FindBy 注释时 Selenium webdriver 的 PageFactory initElements 方法如何工作 我有一段这样的代码 Class PageObject FindBy id usernam
  • 调整 UIAlertView 内 UIPickerView 的大小

    我想放一个UIPickerView in a UIAlertView但我似乎无法正确调整它的大小 这是我得到的 这是我的代码 let alertView UIAlertController title Select item from li
  • Javascript - 异步调用后同步

    我有一个 Javascript 对象 需要 2 次调用外部服务器来构建其内容并执行任何有意义的操作 该对象的构建使得实例化它的实例将自动进行这两个调用 这两个调用共享一个公共回调函数 该函数对返回的数据进行操作 然后调用另一个方法 问题是在
  • Angular Bootstrap 在 Angular 13 项目上给出错误

    我正在尝试安装角度引导程序 https ng bootstrap github io home在我的 Angular 13 项目中 如下所示 ng 添加 ng bootstrap ng bootstrap 但是当我在此语句上按 Y 时 我立
  • 如何在 Ektron 中选择属于某个分类的库项目

    我使用的是 Ektron CMS 版本 8 5 SP2 我有一些分类项目 有些是实际页面 有些是库项目 Word 文件和 PDF 等文档 假设我的分类中有 3 个页面和 2 个库项目 总共 5 个项目 我使用以下代码 ContentMana
  • CakePHP 2.0 $this->表单->input()

    这是我的add tcp 表名称 组 表字段 group id group desc PK group id 这是我的控制器 class GroupsController extends AppController public helper
  • 条形图的峰度、偏度? - Python

    在Python中确定条形图的倾斜 峰度的有效方法是什么 考虑到条形图没有分箱 与直方图不同 这个问题没有多大意义 但我想做的是确定图的高度与距离 而不是频率与箱 的对称性 换句话说 给定沿距离 x 测量的高度 y 值 即 y 6 18 10
  • 为什么 roxygen2 不会自动更新描述文件中的“导入”?

    我正在努力密切关注 hadley sbook http r pkgs had co nz 学习编写 R 包的最佳实践 我很高兴读到这些关于哲学 http r pkgs had co nz intro html本书内容 任何可以自动化的事情都
  • 如何在 ExpressionVisitor 中计算表达式?

    我需要在执行表达式之前使用 ExpressionVisitor 来分析它 根据我的需要 我需要评估除法表达式的正确部分 但我不知道该怎么做 这是我的示例代码 internal class RulesChecker ExpressionVis
  • 将 PostgreSQL text/bytea 列迁移到大对象?

    我有一个表 10k 行 用于存储大值text柱子 当前最大的未压缩大小为 417 MB 烘烤后为 85 MB 此设计的缺陷是无法传输这些值 例如通过 JDBC 使用此列的任何内容都必须将整个内容读入内存 是否有任何工具或快捷方式可用于将此列
  • 聚合查询中的 Mongodb java 展开操作抛出异常

    使用嵌入式 mongo 文档时 我尝试展开数组 但收到类似 org springframework data mapping model MappingInstantiationException Failed to instantiate