日期之间的 MongoRepository 查询

MongoRepository query for between dates

我的 pojo

public class PacketData implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    private final String token = UUID.randomUUID().toString();

    private final ZonedDateTime arrived = ZonedDateTime.now();
}

我打算像下面这样使用。

@Query("?")
List<PacketData> findPacketArrivedBetween(ZonedDateTime startDate, ZonedDateTime endDate);

有没有一种方法可以将以下查询放入上面的 query 注释中,以及我如何做大于和小于逻辑

Query query = new Query().addCriteria(Criteria.where("arrived").gte(startDate).lte(endDate));

您可以尝试以下几种方法。

没有查询注释。

List<PacketData> findByArrivedBetween(ZonedDateTime startDate, ZonedDateTime endDate);

带有查询注释。

@Query("{'arrived': {$gte: ?0, $lte:?1 }}")
List<PacketData> findPacketArrivedBetween(ZonedDateTime startDate, ZonedDateTime endDate);