我正在使用 Groovy 中的 GMongo 库从 MongoDB 中读取项目。CacheItem 类是一个保存缓存项的简单对象,每个项都有一个过期时间,该过期时间是在添加到 mongo 时设置的。当我从 mongo 读取项目时,我只想根据 expireMillis 字段检索尚未过期的项目。
class CacheItem {
def _id
def cacheKey
long expirationMillis
def value
}
这适用于使用 cacheKey 检索项目
item = mongoDb.cache.findOne( cacheKey: "600")
但是,当我尝试使用大于/小于约定的标准时,我似乎无法检索任何文档..
long nowMillis = (new Date()).getTime()
item = mongoDb.cache.findOne( cacheKey: "600", expirationMillis: { $gt: nowMillis})
我是否使用了错误的约定?