如何在mongo中插入带有日期的文档?
2022-09-02 20:15:11
我们正在尝试插入具有当前日期的文档,因为它是字段。我们正在使用mongodb的eclipse插件用java编写。我们希望执行 mongo 的命令,从 mongo 而不是 java 获取日期。Date()
如何执行此 mongo 查询?
db.example.insert({"date":new Date()})
我在预览问题中发现了这个问题,但答案没有帮助
我们正在尝试插入具有当前日期的文档,因为它是字段。我们正在使用mongodb的eclipse插件用java编写。我们希望执行 mongo 的命令,从 mongo 而不是 java 获取日期。Date()
如何执行此 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
运算符,但这适用于“updates”,因此您需要“upsert”操作:
BasicDBObject query = new BasicDBObect();
BasicDBObject update = new BasicDBObject("$currentDate",
new BasicDBObject("date", true)
);
example.update(query,update,true,false);
由于这实际上是一个更新语句,因此如果您打算仅将其作为插入,则需要小心,实际上并未匹配任何文档。因此,最好确保您的“查询”包含唯一信息,例如新生成的信息或同样独特的信息。_id
你可以尝试这样的事情:
db.example.insert({"date":ISODate("2016-03-03T08:00:00.000")});