使用 NumberLong 在 mongodb 中创建查询时出现问题

Issue with creating a query in mongodb with NumberLong

我的 Java 应用程序中有一个 class 字段

Instant created;

这个存储在 mongo 作为

"created" : NumberLong("1467359610266") (f.e.)

我想创建一个查询来获取在 2 个日期之间创建的所有文档:

    public List<MarketingEmail> find(Long startDate, Long endDate) {
    Query query = new Query();
    query.addCriteria(Criteria.where("created").gte(startDate).lte(endDate));
    ...
}

我传递了时间戳变量 startDate 和 endDate (f.e.endDate = 1467981757)。 所以问题是 MongoDB 中的 NumberLong 有 13 位,而我的时间戳只有 10 位;所以我的查询根本不起作用

我该如何解决这个问题?

Mongo时间戳使用毫秒。

要查询它,请将您的值乘以 1000(或在末尾简单添加 000