gpt4 book ai didi

java - 如何在mongo中插入带有日期的文档?

转载 作者:太空宇宙 更新时间:2023-11-04 10:58:10 25 4
gpt4 key购买 nike

我们正在尝试插入一个包含当前日期作为字段的文档。我们正在使用 mongodb 的 eclipse 插件用 java 编写。我们想要执行 mongo 的 Date() 命令来从 mongo 获取日期,而不是从 java 获取日期。

如何执行这个 mongo 查询?

db.example.insert({"date":new Date()})

我在预览问题中发现了这个问题,但答案没有帮助

Link

最佳答案

标准驱动程序需要 java.util.date类型并序列化为 BSON 日期。所以用一个集合对象来“示例”

Date now = new Date();

BasicDBObject timeNow = new BasicDBObject("date", now);
example.insert(timeNow);

如果您正在寻找一种在操作中使用“服务器”时间的方法,可以使用 $currentDate运算符,但这适用于“更新”,因此您需要一个“upsert”操作:

 BasicDBObject query = new BasicDBObect();
BasicDBObject update = new BasicDBObject("$currentDate",
new BasicDBObject("date", true)
);

example.update(query,update,true,false);

由于这实际上是一条更新语句,因此如果您只想将其插入,则需要注意实际上并没有匹配任何文档。因此,最好确保您的“查询”包含唯一信息,例如新生成的 _id 或同样唯一的信息。

关于java - 如何在mongo中插入带有日期的文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47161264/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com