Виждам две опции за постигане на намиране на множество идентификатори:
// 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 .
Но в крайна сметка това въвеждане на удобен метод се трансформира в обикновена стрингифицирана заявка. Така че, ако удобството не отговаря на вашите нужди, опитайте вместо това със заявка.