1
我有一個方法需要刪除要刪除的對象集合。使用Jongo更新/刪除多個對象
這是我刪除他們現在
public void deleteAll(Collection<Object> objs){
for(Object obj : objs) {
collection.remove("{ _id: # }", obj.getId());
}
}
我做了更新我在哪裏,通過對象傳遞的集合循環非常類似的方式。這似乎非常耗時。
有更好的方法來做更新/刪除?
做,即使我不熟悉這個庫中的語法的基本概念是使用**'$ in' **使用列表操作。所以,如果你能以某種方式將所有'_id'值「映射」爲列表類型,那麼你應該能夠使用該運算符作爲參數發送。我看到主站點上的[Query](http://jongo.org/#querying)示例下的「Query Templating」部分可能適用於此。 –
謝謝尼爾,這對刪除幫助很大。儘管有更新,但我能夠提取出所有需要更新的文檔,但我仍然不確定如何一次保存所有新文檔。 Jongo的with()和save()方法一次只接受1個對象,不接受對象的集合 – hpkancha
正如我之前說過的,我對Jongo沒有任何經驗,也沒有時間去嘗試出了一些例子,但如果你有一個MongoDB 2.6或更高版本,那麼這個關於[Bulk Update](http://docs.mongodb.org/manual/reference/command/update/#bulk-update)的手冊部分可能是利益。我已經發布了一些關於使用情況的答案,並且應該有一種方法讓您至少從Java驅動程序獲取原始數據庫對象,以便使用所需的'runCommand'版本。或者如果它是最近的版本,可能還有其他由Java驅動程序公開的批量更新API。 –