Spring-Data-MongoDB:从($gt,$lt)更改为($gte,$lte)
在我的存储库中,我添加了以下方法:
List<Event> findByEventDateBetween(LocalDate start, LocalDate end);
Spring-data-mongo生成的查询为:
[调试]2020-09-11 15:39:59,550-o.s.d.m.c.MongoTemplate-Find Using 查询:{";eventDate";:{";$gt";:{";$Date";:1577833200000},";$lt";: {&QOOT;$DATE";:1599775200000}}字段:CLASS:CLASS的文档{{}} Xxxxxx
当使用BETWEEN关键字时,有没有办法告诉Spring数据使用$gte
和$lte
而不是$gt
和$lt
?
解决方案
您可以使用@Query批注,如下所示:
@Query(value = "{'eventDate':{ $gte: ?0, $lte: ?1}}")
List<Event> findByEventDateBetween(LocalDate start, LocalDate end);
相关文章