当前位置: 首页 > 知识库问答 >
问题:

如何解析MongoDB的ISOJava日期格式

景嘉志
2023-03-14

这是一个示例文档

 {  "userId" : "ABC,

        "timestamp" : ISODate("2014-09-03T22:07:01.261Z"),
        "body" : {
                "id" : "0082171",
                "name" : "XYZ",
                "palce":"Ind"
        },
        } 



  DBObject match = new BasicDBObject(); 

 match.put("body.id","0082171"); 

   match.put("body.name", new BasicDBObject("$exists",1));

我数到50999

当我为匹配条件添加日期字段时,如下所示,我没有得到任何值。

DBObject火柴=new BasicDBObject();match.put("data.type","score.type");match.put("body.name", new BasicDBObject("$存在",1));match.put("时间戳","2014-09-03T22:07:01.261Z");

我想让我的java代码找到价值

共有1个答案

臧增
2023-03-14

只需使用标准的java。util。查询中的Date对象-Java驱动程序将为您处理转换。

代码的问题是,您试图将字符串与ISODate对象匹配,但这永远不会匹配。

下面是代码的外观:

Date timeStamp = new Calendar().set(2014,09,03,22,07,01).getTime();
DBObject match = new BasicDBObject();
match.put("data.type","score.type");
match.put("body.name", new BasicDBObject("$exists",1));
match.put("timestamp",timeStamp);
 类似资料:
  • 问题内容: SimpleDateFormat是一种非常友好的解析器,它滚动结果日期而不是抛出错误。如何在没有正则表达式等的情况下严格解析日期? 问题答案: 是您要寻找的。

  • 问题内容: 我需要将字符串解析为类型。 我已经在标准库中找到了,但这不是很方便。 做这个的最好方式是什么? 问题答案: 该包可以解析不仅RFC 3339日期时间字符串像在的问题,还包括其他ISO 8601的日期和时间字符串不符合RFC 3339(如那些没有UTC偏移,或那些代表仅一个日期)。 请注意,这可能比更严格的方法更严格,但是它们两者都是相当宽容的,并且会尝试解释你传入的字符串。如果要消除任

  • 我想以yyyy-mm-dd格式存储今天的日期。在存储之前,我将今天的日期格式化,并再次解析格式化后的字符串。它以不同于我想要的格式给出了输出日期。我如何获得日期,将其格式化为' yyyy-mm-dd '并再次将其转换为日期,并希望输出格式为' yyyy-mm-dd '。请找到下面的代码,告诉我哪里错了 我得到的上述代码的输出是星期四 Mar 07 00:00:00 GMT 2013.但我希望输出为

  • 我有以下两个日期: 2009年10月8日 我正在使用Jackson将日期从rest api转换为joda Datetime。 我以为模式“dd MMM.yyyy”可以工作,但“may”没有点,所以在那一点上崩溃了。 有没有解决方案,或者我必须自己编写datetime解析器? jackson中的注释是: 所以只允许有一种约会模式。

  • 这是一个很难回答的问题: 如何在没有外部库的情况下解析< code >“YYYYmmdd”格式的日期?如果输入字符串不是这种格式,我希望得到< code>invalid Date(或者undefined,如果这样更简单的话)。

  • 在使用date格式自动设置为IE后,我试图解析某个包含日期条目为纪元数值的json文档。我需要不同的格式(也需要一毫秒) 所以问题是,如何解析IE。转换为带有Bson文档的某种自定义格式字符串。解析方法? 编辑:只是一个更新:问题在document.parse方法中,因为我不知道如何在解析json文档时使用tell.parse函数来使用自定义的日期格式。我总是得到某种默认的日期格式。如何发送给.p