Как применить условие нескольких критериев, используя MogoTemplate

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

mongoTemplate.find(new Query(new Criteria().andOperator (Criteria.where("messagesTime)).gte(DateTime.now().minusMinutes(15).millisOfSecond()) .andOperator(Criteria.where("failCount "))).gt(3))));

1 ответ

Решение

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

публичный список находок (Query query, Class entityClass)

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

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

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 это класс, которому вы хотите дать свой ответ.

Другие вопросы по тегам