3 回答
TA贡献1840条经验 获得超5个赞
拜托,你能在这里检查一次吗?Criteria.where("cities._id").is(cityId)
. 在这里我觉得我们必须使用"cities.id"
.
TA贡献1835条经验 获得超7个赞
现在我删除它并在列表中推送更新的文档,而不是更新子文档实体。它对我有用。通过执行 toHexString 访问对象 ID 之后。
删除操作 update.pull("cities", Query.query(Criteria.where("id").is(id.toHexString()))); mongoOperations.upsert(查询,更新,Person.class);
添加操作:update.push("cities", subdocumentEntity); mongoOperations.updateFirst(查询,更新,Person.class));
TA贡献1911条经验 获得超7个赞
要删除特定的城市文档:
Update changed = new Update().pull("cities", new Query(Criteria.where("id").is(cityId)));
mongoTemplate.updateFirst(new Query(Criteria.where("_id").is(username)), changed, Person.class);
添加新城市信息:
Update update = new Update().addToSet("cities",city);
添加回答
举报