spring-data-mongodb:在从$ gt,$ lt到$ gte,$ lte的变化之间

问题描述

在我的存储库中,我添加了以下方法

List<Event> findByEventDateBetween(LocalDate start,LocalDate end);

spring-data-mongo生成查询是:

[debug] 2020-09-11 15:39:59,550-o.s.d.m.c.MongoTemplate-查找使用 查询:{“ eventDate”:{“ $ gt”:{“ $ date”:1577833200000},“ $ lt”: {“ $ date”:1599775200000}}}字段:class:class的文档{{}} xxxxxx

当使用 Between 关键字时,是否有办法告诉spring数据使用$gte$lte而不是$gt$lt? / p>

解决方法

您可以按照以下说明使用 @Query 注释:

@Query(value = "{'eventDate':{ $gte: ?0,$lte: ?1}}")
List<Event> findByEventDateBetween(LocalDate start,LocalDate end);