MongoDB Spring 数据 Criteria.all

2023-12-02

在 mongo 控制台中我有:

> db.test.find({})
{ "_id" : ObjectId("515afcfedba6a529520becfa"), "array" : [ { "key" : "one", "value" : 1 }, { "key" : "two", "value" : 2 } ] }
{ "_id" : ObjectId("515b0e48dba6a529520becfd"), "array" : [ { "key" : "one", "value" : 1 }, { "key" : "two", "value" : 2 }, {"key" :"three", "value" : 3 } ] }


> db.test.find({array: {$all:[{key:'one', value:1}, {key:'two',value:2}]}});
{ "_id" : ObjectId("515afcfedba6a529520becfa"), "array" : [ { "key" : "one", "value" : 1 }, { "key" : "two", "value" : 2 } ] }
{ "_id" : ObjectId("515b0e48dba6a529520becfd"), "array" : [ { "key" : "one", "value" : 1 }, { "key" : "two", "value" : 2 }, {"key" :"three", "value" : 3 } ] }

> db.test.find({_id:ObjectId("515afcfedba6a529520becfa"), array: {$all:[{key:'one', value:1}, {key:'two',value:2}]}});
{ "_id" : ObjectId("515afcfedba6a529520becfa"), "array" : [ { "key" : "one", "value" : 1 }, { "key" : "two", "value" : 2 } ] }

如何使用以下命令编写第二个和第三个查询: org.springframework.data.mongodb.core.query.Criteria ?


这是迄今为止我发现的最好的解决方案:

...

DBObject obj = new BasicDBObject();
obj.put( "key", 1 );
obj.put( "value", "one" );
DBObject obje1 = new BasicDBObject();
obje1.put( "$elemMatch", obj );

obj = new BasicDBObject();
obj.put( "key", 2 );
obj.put( "value", "two" );
DBObject obje2 = new BasicDBObject();
obje2.put( "$elemMatch", obj );

Query qry = new Query( where("array").all(obje1, obje2) );

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

MongoDB Spring 数据 Criteria.all 的相关文章

随机推荐

  • 对两个给定日期之间的集合日期字段进行排序

    我想根据两天之间的日期字段对列表进行排序 比如从现在到接下来的三天 排序列表应从现在开始和接下来的 3 天按升序排列 之后的所有先前和未来日期按升序排列 e g List
  • 如何在多个 EJB 之间共享 Java 缓存系统 (JCS) 资源

    我使用 JCS 来存储 ldap 搜索结果 该结果应由多个 EJB 共享 我创建了一个单例类来仅初始化 JCS 一次 但由于 EJB 的类加载器 它已使用自己的副本初始化了多次 所以搜索资源不共享 你们如何解决需要在多个 bean 之间共享
  • 如何让应用程序在后台保持唤醒状态

    我编写了一个应用程序 该应用程序连接到蓝牙设备并在汽车 在后台 和导航 或其他东西 在前台使用 但在 Android 7 也可能是 6 上 应用程序会在一段时间后进入睡眠状态 当我尝试从相机拍照时 睡眠模式 立即生效 我的应用程序现在正在睡
  • 从基类方法调用基类重写函数

    public class A public void f1 String str System out println A f1 String this f1 1 str public void f1 int i String str Sy
  • 检测精灵套件中的碰撞

    我正在尝试使用精灵套件制作一个简单的游戏 基本思想是 有一名玩家可以跳跃以避免阻挡 但我有一个问题 我不知道如何做到当玩家击中方块时玩家消失并且血液动画开始 首先 我不明白我在苹果网站上找到的这段代码的作用 static const uin
  • 一个 docker 用户可以向另一个用户隐藏数据吗?

    Alice 和 Bob 都是同一主机上 docker 组的成员 Alice 想要在 Docker 容器中运行一些长时间运行的计算 然后将结果复制到她的主文件夹中 Bob 非常爱管闲事 Alice 不希望他能够读取她的计算所使用的数据 系统管
  • Leaflet js:如何在地图上绘制任何标记结束时获取纬度和经度

    我得到了一个接近的代码 但我不确定 因为我是第一次使用 Leaflet js 我的意图是 假设 Leaflet js 正在显示地图或非地理数据 并且我有一个与 Leaflet js 相关的工具栏 工具栏有许多标记 如圆形 多边形 方形等 当
  • 我正在尝试获取所有发表超过 3 篇作品的作者的列表 - DBpedia Sparql

    我正在尝试获取已完成 3 项或以上工作的所有作者的列表 在 DBpedia 中 我的示例可以运行在 http dbpedia org sparql 基本代码 select count work as totalWork author Whe
  • magento订单列表查询

    我想选择 Magento 中所有订单的列表 这是我目前正在处理的另一个 PHP 应用程序中显示来自 magento 的所有订单列表所必需的 也有人可以使用 Magento 约定给我写代码 例如Mage 我使用 Magento 1 4 2 版
  • 在 Shiny 中同步两个 Highchart - 输入更改时不调用 JS

    相关于上一篇文章我提出 我想在 R Shiny 中的一个单独但同步的 Highcharter 图中调用单击事件时 在两个方向上更新一个 Highcharter 图中的点以更改颜色 我能够在 R Shiny 中同步两个 Highcharter
  • 使用 python 替换特定行中的字符串

    我正在编写一个 python 脚本来替换具有特定扩展名 seq 的目录中每个文本文件中的字符串 替换的字符串只能来自每个文件的第二行 输出是一个新的子目录 称为 clean 其文件名与原始文件相同 但带有 clean 后缀 输出文件包含与原
  • 强制 CEFSharp 下载而不显示对话框

    我有一个带有 CEFSharp 的 WPF 应用程序 它是一个 Web 浏览器 当我单击下载链接时 它会显示一个对话框并询问我要将文件保存在哪里 如何强制 Web 浏览器下载任何文件而不显示对话框 我想创建一些像谷歌浏览器这样的东西 因此
  • Python 中昂贵对象的智能缓存

    我有一个按顺序排列的图像目录 通常 我的代码将使用图像的连续子集 例如图像 5 10 中的数据 访问这些图像的简单选项是 使用在需要时加载图像并读取我的数据 例如像素值 的方法创建一个包装对象 这几乎没有内存开销 但速度会很慢 因为每次都需
  • 当我尝试保存新记录或更新现有记录时,EF 返回 0000-0000-0000-xxx 作为 Guid?

    我在我的 C 项目中使用 EF4 我面临的问题是 当我尝试保存记录时 出现主键违规 并且 PK 值为 0000 0000 0000 xxx 据我猜测 EF 无法识别 IsIdentity 标志并生成 guid 值 在我的表的 SQL Ser
  • OpenCV 中的 const Mat 引用有意义吗?

    在下面的函数中 foo const Mat img img可以在函数中进行更改 甚至编译器不会发出警告 为什么 是不是意味着const Mat参考没有任何意义 这是因为 Mat 包含指向实际图像数据的指针 const 仅适用于 Mat 对象
  • JavaFX安装

    我是 Java 新手 目前正在阅读文本并学习 我已经在我的系统中安装了JDK opt目录 在 Kubuntu 上工作 我还安装了 openjfx opt 由于我使用了终端 每当我想编译或运行涉及 JavaFX 模块的内容时 我都会使用 ja
  • 如何获取“TYPE_3BYTE_BGR”图像的 RGB 值?

    我有一张图片TYPE 3BYTE BGR我想把它转换成TYPE INT RGB 尽管我已经搜索过 但我还没有找到执行此操作的方法 我想逐像素转换图像 然而 似乎BufferedImage getRGB i j 不起作用 如何获取 type
  • Verilog HDL 循环语句错误:具有非常量循环条件的循环必须终止

    我对 Verilog 完全陌生 对于我在大学学习的课程 我必须很快了解它的很多内容 我正在摆弄我的 Altera DE2 板和 quartis2 并了解其细节 我正在尝试制作一个通过开关打开和关闭的计数器 到目前为止 计数器根据按键进行计数
  • 扩展 ANTLR3 AST

    使用 ANTLR2 您可以在语法定义文件中定义如下内容 options language CSharp namespace Extended Tokens tokens TOKEN
  • MongoDB Spring 数据 Criteria.all

    在 mongo 控制台中我有 gt db test find id ObjectId 515afcfedba6a529520becfa array key one value 1 key two value 2 id ObjectId 51