我们正在try 插入一个以当前日期为字段的文档.我们正在用java编写mongodb的eclipse插件.我们希望执行mongo的Date()
命令,从mongo而不是java获取日期.
如何执行这个mongo查询?
db.example.insert({"date":new Date()})
我在一个预览问题中发现了这个问题,但答案没有帮助
我们正在try 插入一个以当前日期为字段的文档.我们正在用java编写mongodb的eclipse插件.我们希望执行mongo的Date()
命令,从mongo而不是java获取日期.
如何执行这个mongo查询?
db.example.insert({"date":new Date()})
我在一个预览问题中发现了这个问题,但答案没有帮助
标准驱动程序接受java.util.date种类型并序列化为BSON日期.所以用一个集合对象来"举例"
Date now = new Date();
BasicDBObject timeNow = new BasicDBObject("date", now);
example.insert(timeNow);
如果您正在寻找一种在操作中使用"服务器"时间的方法,则有$currentDate
运算符,但它与"更新"一起工作,因此您可能需要"上传"操作:
BasicDBObject query = new BasicDBObect();
BasicDBObject update = new BasicDBObject("$currentDate",
new BasicDBObject("date", true)
);
example.update(query,update,true,false);
因为这实际上是一个update语句,所以如果您希望这只是一个insert语句,那么需要注意的是,您实际上没有匹配任何文档.因此,最好确保您的"查询"包含唯一的信息,例如新生成的_id
或其他同样唯一的信息.