gpt4 book ai didi

mongodb - 在 mongodb 中更新多嵌入数据

转载 作者:可可西里 更新时间:2023-11-01 10:04:06 25 4
gpt4 key购买 nike

我想插入嵌入数据中的数组列表。我尝试了几种方法,但无法弄清楚。我的数据结构是这样的。这里给出的代码只是对我原始数据结构的虚拟引用

 Class X{
Integer _id;
Arraylist<Y> objY;
}

Class Y{
Integer _id;
Arraylist<Z> objZ;
}

Class Z{
Integer _id;
String value;
String oldValue
}

我想插入一个新数据到objZ我知道 X 类和 Y 类的 id 值。我正在使用 Spring mongotemplateSpring Mongo 模板 支持吗?谁能帮我解决这个问题。

提前致谢。

最佳答案

我明白了,希望它可以帮助这里的人,使用聚合来做到这一点。

Query searchUserQuery = new Query((Criteria.where("_id").is("542264c8e4b098972a1cf60c").and("leads._id").is("2")));// _id is the id of class X
AggregationOperation match = Aggregation.match(searchUserQuery );
AggregationOperation group = Aggregation.group("objY");
Aggregation aggregation = Aggregation.newAggregation(Aggregation.unwind("objY"),match, group);

List<objY> asd=mongoOperation.aggregate(aggregation, "Name_of_ur_collection", B.class).getMappedResults();
ArrayList<Z> s=asd.get(0).getObjZ();
s.add("New Data to be added");
mongoOperation.updateFirst(searchUserQuery, Update.update("objY.$.objZ", s), X.class);

这会将您的数组列表插入到 Y 类中。

谢谢

关于mongodb - 在 mongodb 中更新多嵌入数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26009409/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com