【发布时间】:2017-04-25 02:15:14
【问题描述】:
我正在开发一个 Rest API 并使用 Jackson 库进行 Json 处理。
在我的 POJO 中,我定义了几个 java.util.Date 字段,我正在使用 ObjectMapper 解析这些日期。
问题是所有日期都是错误的。
这是从客户端收到的示例 Json 数据:
{
"Date1":"20161208 121500",
"Date2":"20161205 131515",
"Date3":"19830201 122718"
}
这里是代码sn-p:
private final SimpleDateFormat df = new SimpleDateFormat("yyyyMMDD hhmmss");
ObjectMapper mapper = new ObjectMapper();
mapper.setTimeZone(TimeZone.getDefault());
mapper.setDateFormat(df);
MetaData mData = null;
try {
mData = mapper.readValue(metaData, MetaData.class);
}
catch(JsonProcessingException jpe) {
return Response.status(Status.BAD_REQUEST).build();
}
创建 Date 对象时,它会关闭几个月。当我在日志中打印日期时,我得到以下信息:
Date1: 01/08/16 00:15:00 (Original date is 12/08/2016)
Date2: 01/05/16 13:15:15 (Original date is 12/05/2016)
Date3: 01/01/83 00:27:18 (Original date is 02/01/1981)
谁能看到我做错了什么:(
非常感谢!
【问题讨论】:
标签: date jersey jackson deserialization