Виждам две опции за постигане на намиране на множество идентификатори:
// 1. find with an array of ids
ObjectId[] ids = {id, id, id};
collection.find("{_id:{$in:#}}", ids).as(Friend.class);
// 2.find a list of ids
collection.find("{_id:{$in:[#, #, #]}}", id, id, id).as(Friend.class);
findOne
предлага удобен метод с ObjectId
и, ако използвате пояснен String
вместо ObjectId
, Oid.withOid
метод трансформира вашия String
в ObjectId
.
Но в крайна сметка това въвеждане на удобен метод се трансформира в обикновена стрингифицирана заявка. Така че, ако удобството не отговаря на вашите нужди, опитайте вместо това със заявка.