使用 MongoOperations Spring Java 在 mongodb 中保存日期时出错
Error while saving date in mongodb using MongoOperations Spring Java
我需要在 mongodb 中保存有日期的 json 对象,这里是示例 json:
{
"modifiedon": {
"$dateFromString": {
"dateString": "2017-02-08T12:10:40.787"
}
},
"modifiedby": "ramsha-GRM1 Ambreen",
"id": 537
}
我希望 'modifiedOn' 值应保存为
"modifiedon": ISODate("2017-02-08T12:10:40.78")
这是使用 java
将 json 插入 mongodb 的代码
String json = {<JSONVALUE>};
mongoOperations.insert(json,"risk");
但是 MongoOperations 保存 JSON 时没有处理 $dateFromString,它是 MongoDB 格式的日期。非常感谢任何线索,谢谢
经过试用后,上述问题已通过将输入 JSON 对象修改为
得到解决
{ "modifiedon": { "$date": "2020-09-30T11:32:58.000Z" }, "modifiedby": "ramsha-GRM1 Ambreen", "id": 229 }
并且它作为日期对象保存在 MongoDB 中,我可以查询日期
将 dateString
的格式更改为 using ISO-8601 representation. In other words, the format should be as specified by DateTimeFormatter#ISO_INSTANT
的格式。下面给出了以这种格式生成的字符串的示例:
import java.time.Instant;
public class Main {
public static void main(String[] args) {
System.out.println(Instant.now());
}
}
输出:
2020-10-02T13:52:08.564327Z
我需要在 mongodb 中保存有日期的 json 对象,这里是示例 json:
{
"modifiedon": {
"$dateFromString": {
"dateString": "2017-02-08T12:10:40.787"
}
},
"modifiedby": "ramsha-GRM1 Ambreen",
"id": 537
}
我希望 'modifiedOn' 值应保存为
"modifiedon": ISODate("2017-02-08T12:10:40.78")
这是使用 java
将 json 插入 mongodb 的代码String json = {<JSONVALUE>};
mongoOperations.insert(json,"risk");
但是 MongoOperations 保存 JSON 时没有处理 $dateFromString,它是 MongoDB 格式的日期。非常感谢任何线索,谢谢
经过试用后,上述问题已通过将输入 JSON 对象修改为
得到解决{ "modifiedon": { "$date": "2020-09-30T11:32:58.000Z" }, "modifiedby": "ramsha-GRM1 Ambreen", "id": 229 }
并且它作为日期对象保存在 MongoDB 中,我可以查询日期
将 dateString
的格式更改为 using ISO-8601 representation. In other words, the format should be as specified by DateTimeFormatter#ISO_INSTANT
的格式。下面给出了以这种格式生成的字符串的示例:
import java.time.Instant;
public class Main {
public static void main(String[] args) {
System.out.println(Instant.now());
}
}
输出:
2020-10-02T13:52:08.564327Z