Java 如何在MongoDB中根据日期字段查询单据?
在MongoDB中,我有如下指定的日期字段值:Java 如何在MongoDB中根据日期字段查询单据?,java,mongodb,Java,Mongodb,在MongoDB中,我有如下指定的日期字段值: ISODate(2015-01-12T05:00:00.000+0000) 如何使用Java检索基于此日期字段的文档。我将这个字符串2015-01-12T05:00:00.000+0000作为参数发送给一个方法。我正在尝试将此字符串转换为日期,并尝试从MongoDB检索文档 我无法解决这个问题。我正在使用Java 7。确保您有一个正确的Java日期对象,然后按如下方式查询: Date myDate = <whatever>; M
ISODate(2015-01-12T05:00:00.000+0000)
如何使用Java检索基于此日期字段的文档。我将这个字符串2015-01-12T05:00:00.000+0000
作为参数发送给一个方法。我正在尝试将此字符串转换为日期,并尝试从MongoDB检索文档
我无法解决这个问题。我正在使用Java 7。确保您有一个正确的Java日期对象,然后按如下方式查询:
Date myDate = <whatever>;
MongoClient mongoClient = new MongoClient();
MongoCollection<Document> coll = mongoClient.getDatabase("test").getCollection("xyz");
FindIterable<Document> result = coll.find(Filters.eq("myDateField", myDate));
datemydate=;
MongoClient MongoClient=新的MongoClient();
MongoCollection coll=mongoClient.getDatabase(“测试”).getCollection(“xyz”);
FindTerable结果=coll.find(Filters.eq(“myDateField”,myDate));
请注意,这是java驱动程序3.x标准版。您检查过mongo db api吗?您好,dev777-您能告诉我们您到目前为止尝试了什么,并解释它以什么方式不起作用吗?它是否有错误,或者找不到您正在查找的数据,或者其他什么?如何将字符串“2015-01-12T05:00:00.000+0000”转换为jave Date对象?日期日期=日期。从(DateTimeFormatter.of模式(“yyyyy-MM-dd'HH:MM:ss.ssz”)。解析(“2015-01-12T05:00:00.000+0000”,ZonedDateTime::from)。到安装())-注意,除了默认的JVM时区之外,目前似乎没有支持使用实际时区的方法,因为mongo驱动程序只支持简单的日期,这基本上会删除时区信息。我们现在只能希望有一个更好的未来版本。DateFormatter需要使用哪种maven依赖项?这是基本的Java 8首先,Java 8已经成为标准两年多了,是时候升级了。然后,我们离开了原始问题的基础,至少在我的理解中,这个问题的中心是在mongo中搜索日期,而不是在java中解析日期格式。您可以通过简单的搜索找到大量关于此的信息。