0

抱歉可能出现重复的问题...我需要从已计算过期时间的集合中删除文档System.currentTimeMillis() - doc.lastAccess > doc.ttl。我如何使用BasicDBObject查询(或其他最有效/最简单的替代方法)来做到这一点?

4

1 回答 1

1

好。我得到了解决方案...但是我在某个地方读到 $where 太慢了...有人可以为我提供更好的方法吗?

  BasicDBObject q = new BasicDBObject("$where", 
       "new Date().getTime() - this.lastAccess > this.ttl");

  this.collection.remove(q);
于 2012-11-30T18:46:52.647 回答