Я создал весенний загрузочный Java-проект, используя MongoDB в качестве хранилища данных.У меня есть слой дао, используя MongoTemplate.У меня есть случай использования, когда мне нужно будет искать соответствующие документы по имени, каналу и дате между полями timeFrom и timeTo
Ниже приведен пример документа, хранящегося в MongoDB
{
"_id" : ObjectId("5cc84583d7d4ae60b42d5fed"),
"name" : "New config",
"enabled" : false,
"channel" : "[\"web\",\"corp\"]",
"timeFrom" : ISODate("2019-04-18T06:42:00.000+0000"),
"timeTo" : ISODate("2019-04-20T06:42:00.000+0000"),
}
Я построил свой запрос, как показано ниже, и он не работает
Query query = new Query();
query.addCriteria(Criteria
.where("name").is(config.getName())
.and("channel").in(config.getChannel())
.and("timeFrom").lt(config.getDate())
.and("timeTo").gt(config.getDate()));
Может ли кто-нибудь помочь с правильным запросом для использования в моем случае использования для запроса массива JSON и запроса даты?