Veo dos opciones para lograr una búsqueda en múltiples ID:
// 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
ofrece un método conveniente con un ObjectId
y, si usa un String
anotado en lugar de un ObjectId
, el Oid.withOid
método transforma su String
en un ObjectId
.
Pero, al final, esta entrada de método de conveniencia se transforma en una consulta de cadena regular. Entonces, si la comodidad no se ajusta a sus necesidades, pruebe con una consulta.