【发布时间】:2021-12-10 21:42:41
【问题描述】:
如何在 Java 中正确地将 dto 转换为 json?我使用ObjectMapper 如下所示:
ObjectDto dto;
byte[] json = new byte[0];
dto = service.getDto(someId);
ObjectMapper mapper = new ObjectMapper();
json = mapper.writeValueAsBytes(dto);
问题在于格式化date 字段。在 Dto 中,我的日期格式为:2021-09-27T12:06:27.990Z,但在将此 dto 转换为以字节为单位的 json 之后,我看到我的 date 被拆分为具有以下许多属性的对象:
"date":{
"year":2021,
"month":"OCTOBER",
"nano":528000000,
"monthValue":10,
"dayOfMonth":25,
"hour":13,
"minute":14,
"second":58,
"dayOfYear":298,
"dayOfWeek":"MONDAY",
"chronology":{
"id":"ISO",
"calendarType":"iso8601"
}
},
在使用ObjectMapper 后,我想将Dto 的所有属性都以与转换前相同的格式。如何做到这一点?
感谢您的帮助!
【问题讨论】:
-
你的 DTO 中
creationTime的数据类型是什么? -
这是我的
date,我粘贴了错误的json -
我正在修复它.....
-
LocalDateTime -
这能回答你的问题吗? Java 8 LocalDate Jackson format(特别是this answer.)
标签: java json object objectmapper