如何在带有Spring Data MongoDB的Java中使用$lookup阶段?

这个问题已经在这里有了答案:            >            lookup in mongodb aggregation                                    1个
在最新版本的spring上,我已经看到了很多关于堆栈溢出的问题,这表明spring-data-mongodb中不支持此操作,而新的spring-data-mongodb 1.10.0中对此操作也没有任何支持

db.orders.aggregate([
        {
          $lookup:
            {
              from: "inventory",
              localField: "item",
              foreignField: "sku",
              as: "inventory_docs"
            }
       }
    ])

解决方法:

从1.9版本开始就提供查找支持.

LookupOperation lookupOperation = LookupOperation.newLookup().
                                   from("inventory").
                                   localField("item").
                                   foreignField("sku").
                                   as("inventory_docs");
Aggregation aggregation = Aggregation.newAggregation(lookupOperation);
List<BasicDBObject> results = mongoOperations.aggregate(aggregation, "orders", BasicDBObject.class).getMappedResults();

相关文章

MongoTemplate 是Spring Data MongoDB 中的一个核心类,为 S...
笔者今天要分享的是一个项目重构过程中如何将数据库选型由原...
mongodb/mongoTemplate.upsert批量插入更新数据的实现
进入官网下载官网安装点击next勾选同意,点击next点击custom...
头歌 MongoDB实验——数据库基本操作
期末考试复习总结