当前位置: 首页 > 知识库问答 >
问题:

如何使用Mongo模板在java中进行聚合

朱宜
2023-03-14

我是MongoDB的新手!

有人能帮助我如何编写java代码来转换下面的mongo聚合查询吗?目前,我正在一个具有“spring-boot-starter-data-mongob”作为依赖项的Spring Boot应用程序中编写它。我正在考虑使用Mongo模板使用下面的查询获取分组文档。

db.getCollection('test').aggregate([  
{
    $group: {
        _id: { name: "$name", zip: "$recipients.0.address.postalcode" },
        groupedDocs: { $addToSet: "$$ROOT" }
    }
}
]);

共有1个答案

王声
2023-03-14

使用MongoTemboard是正确的想法。您需要首先创建聚合,如下所示:

var aggregation = Aggregation.newAggregation(
    Aggregation.group(Fields.from(
            Fields.field("name"),
            Fields.field("zip", "recipients.0.address.postalcode")
        )
    ).addToSet("$$ROOT")
);

当然,您可以使用静态导入使其更加简洁,我这样写是为了更好地找到类。我不确定$$根引用,您可能需要查找它。有了它,您可以调用MongoTemplate:

return mongoTemplate.aggregate(aggregation, "Test", Test.class);
 类似资料:
  • 我正在阅读来自Reactjs的React文档。但它似乎不是为我想做的事情而工作。 我想渲染一个有嵌套div的组件。单击每个嵌套div后,它会变成一个输入。在特定div之外单击后,它将输入转换回div。 我想使用带有模糊/焦点的参考文件来实现这一点,但我似乎不知道如何让它工作。 这就是我的组件到目前为止的样子,它是一个子组件: 查看react提供的示例代码。js。org,我想知道为什么没有onFoc

  • 我使用的是MongoDB,我必须在spring数据mongo DB中使用$date的聚合查询。这是我的用户收藏。 现在我必须使用MongoTemplate在spring data mongodb中编写这个查询。我是使用聚合的新手。他们是任何简单的方法来使用它。请帮忙 谢谢你。

  • 问题内容: 这是我第一次在Java中使用Mongo,并且此聚合查询存在一些问题。我可以在Mongo for Spring中执行一些简单的查询,并在我的Repository接口中扩展注解。知道在Spring-Data中进行长时间聚合时采用哪种方法会很有帮助。 问题答案: 您可以实现AggregationOperation 并编写自定义聚合操作查询,然后用于执行您在mongo shell中执行的任何m

  • 这是我第一次在Java中使用Mongo,这个聚合查询有一些问题。我可以在我的存储库界面中使用注释在Mongo for Spring中进行一些简单的查询,这扩展了

  • 问题内容: 我已经在线阅读了文档和各种教程,但是我对regex在Java中的工作方式仍然感到困惑。我正在尝试做的是创建一个接受字符串类型参数的函数。然后,我想检查传递的字符串是否包含MDCLXVIivxlcdm以外的任何字符。因此,例如,字符串“ XMLVID​​”应返回false,而“ ABXMLVA”应返回true。 当我通过时,“ XMLIVD”,“ ABXMLVA”和“ XMLABCIX”

  • 问题内容: 我正在使用polymer-jsonp执行JSONP请求,但响应有时包含html。 例如,假设post.content为,我如何以粗体显示{{post.content}} ? 问题答案: Polymer不会通过数据绑定标记未转义的HTML,因为它成为XSS攻击的漏洞。 关于在有限的情况下标记HTML或允许进行自定义过滤的讨论正在进行,但是在数据层尚未实现。 现在可以使用附加的自定义元素来