我使用mongodb和spring。我需要从mongodb收集满足日期和时间条件的文档。作为字符串存储在两个不同字段中的日期和时间。以下是文档示例:
{
"_id":{"$oid":"aaaaaaaaa"},
"date":{"$date":"2020-12-14T16:30:00.936Z"},
"potentialUserId":"5fd6d8d3c766eb16c1acd1d1",
"strDate":"2020-12-14",
"strTime":"6:30",
}
目前,我仅按日期范围从集合中提取所有文档,并使用自定义查找查询:
public interface MeetingRepository extends MongoRepository<Meeting, String> {
List<Meeting> findByStrDateBetween(String startDay, String endDay);
}
正如我上面提到的,我想从集合文档中获取不仅满足日期条件而且还满足时间条件的文档。
所以为了这个目的,我也可以通过一系列的时间:
List<Meeting> findByStrDateBetween(String startDay, String endDay, String startTime, String endTime);
但我还需要更改函数名的文本:
findByStrDateBetween
所以它不仅按strdate字段过滤,而且按strtime字段过滤。
我的问题是如何改变 findByStrDateBetween
它能同时满足这两个条件吗?
1条答案
按热度按时间qoefvg9y1#
为了实现这一点,还有另一个选择,就是创建一个带注解的接口
@NoRepositoryBean
使用检索数据的方法,然后创建一个实现所创建接口的类。您的界面如下:
接口的自定义实现: