Vejo duas opções para obter uma localização em vários IDs:
// 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
oferece um método de conveniência com um ObjectId
e, se você usar uma String
anotada em vez de um ObjectId
, o Oid.withOid
O método transforma sua String
em um ObjectId
. Mas, no final, essa entrada de método de conveniência é transformada em uma consulta regular com string. Portanto, se a conveniência não atender às suas necessidades, tente uma consulta.