Как применить условие нескольких критериев, используя MogoTemplate - PullRequest
0 голосов
/ 25 января 2019

Я хочу применить несколько условий к критериям, но andOperator секунд String дает ошибку

mongoTemplate.find (новый запрос (новые критерии (). И оператор) (Criteria.where ( "notificationTime"). GTE (DateTime.now (). MinusMinutes (15) .millisOfSecond ()) .andOperator (Criteria.where ("faultCount")). gt (3))));

1 Ответ

0 голосов
/ 25 января 2019

Определение критерия выглядит хорошо.Однако одна из причин, по которой это может привести к ошибке, заключается в том, что вы не передаете второй аргумент методу find.Посмотрите на javadoc здесь :

публичный список поиска (запрос, Class entityClass)

коллекция для класса сущности в List указанного типа.

Попробуйте следующее:

mongoTemplate.find(new Query(new Criteria().andOperator (Criteria.where("notificationTime")
  .gte(DateTime.now().minusMinutes(15).millisOfSecond())
  .andOperator(Criteria.where("failureCount")).gt(3))), Response.class);

Где Response.class - класс, для которого вы хотите привести свой ответ.

...