Я создаю сложный запрос Mongo
в зависимости от нескольких параметров. Один из критериев, который я хочу сделать с помощью вспомогательного класса Criteria
:
{"field1": {$exists: true, $ne: false}}
Я попытался сделать это с помощью:
Criteria.where("field1").is(Criteria.where("$ne").is(false).and("$exists").is(true))
Но он генерирует:
{ "field1" : { $java : org.springframework.data.mongodb.core.query.Criteria@23864e60 }
Итак, как добиться точного запроса, который мне нужен? Я не могу жестко запрограммировать эту строку запроса, потому что эти критерии типа генерируются динамически для field1,...fieldN, а затем объединяются с $or
:
statusCriteria = statusCriteria.orOperator(criterias.toArray(new Criteria[criterias.size()]));