Podría usar Criterios.u Operador para devolver cada Documento que coincida con al menos un Criterio de su lista.
Cree su lista de Criterios en bucle sobre su lista
List<Criteria> criteriaList = new ArrayList<>();
for (item : yourList) {
criteriaList.add(Criteria.where("x").is(item.x).and("y").is(item.y));
}
Cree su consulta usando orOperator
:
Query.query(new Criteria.orOperator(criteriaList.toArray(new Criteria[criteriaList.size()])));