0

我有一个表单的 mongodb 集合

{
  "_id":"id",
  "userEmail":"userEmailFromCustomerCollection",
  "customerFavs":[
    "www.xyz.com",
    "www.xyz.com",
    "www.xyz.com"

    ]
}

我需要使用 Jongo 向客户 favs 数组添加一个元素,我正在使用以下代码片段来执行此操作。

String query = "{userEmail:'"+emailId+"'}";
    customerFavCollection.update(query).with("{$addToSet:{customerFavs:#}}", favUrl);

我的问题是,如果文档不存在,我需要更新文档,我怎么能使用 Jongo 来做,我知道一个更简单的选择是通过 Id 检索文档,如果它不存在然后插入文档使用 save() ,但我试图避免额外的检索。

4

1 回答 1

-1

您可以添加upsert()查询。

customerFavCollection.update("userEmail:#", emailId)
                     .with("{$addToSet:{customerFavs:#}}", favUrl)
                     .upsert();
于 2015-04-30T09:14:20.240 回答