0

鉴于我有这个从 Mongo DB 检索到的示例 BSON 文档。

{
    "field1": "text1",
    "field2": {
        "field2Sub1": "text2"
    },
    "field3" : [
        {
            "field3Sub1": "text3",
            "field3Sub2": "text4"
        },
        {
            "field3Sub1": "text5",
            "field3Sub2": "text6"
        }
    ],
    "field4": {
        "field4Sub1": "text7",
        "field4Sub2" : [
             {
                 "field4Sub2Sub1": "text8",
                 "field4Sub2Sub2": "text9"
            },
            {
                 "field4Sub2Sub1": "text10",
                 "field4Sub2Sub2": "text11"
            }
        ]
    }
}

在 Mongo DB 中,如果我想搜索具有field4Sub2Sub2包含 value的字段的文档"text11"

我可以做这种搜索查询:

{"field4.field4Sub2.field4Sub2Sub2": "text11"}

或者,我也可以使用这种搜索来搜索具有field3Sub1包含值的字段的文档text3

{"field3.field3Sub1": "text11"}

鉴于上述对象,我将其转换为 Java BSON 文档。而且,我想问一下 Java 或 Java 库中是否有一种方法可以搜索 Document 的内部并给我特定字段的值。

使用带点注释的搜索字符串,例如 "field3[0].field3Sub1" or "field4.field4Sub1""field4.field4Sub2[1].field4Sub2Sub2"

这将相应地返回以下值:

text3
text7
text11

谢谢

4

0 回答 0