我有一个
形式的mongodb集合{
"_id":"id",
"userEmail":"userEmailFromCustomerCollection",
"customerFavs":[
"www.xyz.com",
"www.xyz.com",
"www.xyz.com"
]
}
我需要使用Jongo向customer favs数组添加一个元素,我使用以下代码片段来执行此操作。
String query = "{userEmail:'"+emailId+"'}";
customerFavCollection.update(query).with("{$addToSet:{customerFavs:#}}", favUrl);
我的问题是,如果文档没有,我需要插入文档 已经存在,我怎么能使用Jongo这样做,我知道一个更容易的选择是通过Id检索文档,如果它不存在然后使用save()插入文档,但我试图避免额外的检索。 / p>
答案 0 :(得分:-1)
您可以在查询中添加upsert()
。
customerFavCollection.update("userEmail:#", emailId)
.with("{$addToSet:{customerFavs:#}}", favUrl)
.upsert();