小编典典

日期格式映射到JSON Jackson

json

我有一个来自API的Date格式,如下所示:

"start_time": "2015-10-1 3:00 PM GMT+1:00"

这是YYYY-DD-MM HH:MM am / pm GMT时间戳。我将此值映射到POJO中的Date变量。显然,其显示转换错误。

我想知道两件事:

  1. 与Jackson进行转换时,我需要使用哪种格式?Date是否适合此字段类型?
  2. 通常,是否有一种方法可以在Jackson将变量映射到Object成员之前处理这些变量?诸如更改格式,计算等。

阅读 207

收藏
2020-07-27

共1个答案

小编典典

与Jackson进行转换时,我需要使用哪种格式?Date是否适合此字段类型?

Date是一个很好的字段类型。您可以使用ObjectMapper.setDateFormat以下命令轻松地使JSON可解析:

DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm a z");
myObjectMapper.setDateFormat(df);

通常,是否有一种方法可以在Jackson将变量映射到Object成员之前处理这些变量?诸如更改格式,计算等。

是。您有几种选择,包括实现自定义JsonDeserializer,例如extends
JsonDeserializer<Date>是一个好的开始。

2020-07-27