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

标签 java eclipse mongodb mongodb-query

我们正在尝试插入一个具有当前日期的文档作为它的字段。我们正在使用 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运算符,但这适用于“更新”,因此您需要“更新插入”操作:

 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/24483727/

相关文章:

android - eclipse android 关闭 ndk 自动构建

java - Eclipse + GWT -> 开发模式内存不足

java - 引用类 Morphia 上的索引违规

MongoDB Atlas - 副本集没有主副本

Java - 类型与实例类型

java - 在 libgdx 中填充 2D 弯曲凹形状

java - 监听套接字必须在线程中运行吗?

java - 如何在项目资源管理器中选择项目元素(eclipse插件)

java - 对象集合类

node.js - 我可以在测试中连接到 mongoose 吗?