解析从json到对象的日期时出错

时间:2016-07-15 09:06:45

标签: java json parsing exception java.util.date

我有一个json

{"redemptionStartDate":1436950251941,"redemptionEndDate":1500108651941}

我试图将这个json解析为一个具有日期对象(java.util.Date)的对象

private Date redemptionStartDate;
private Date redemptionEndDate;

我在解析到这些Date对象时收到com.google.gson.JsonSyntaxException错误。我该如何解决这个问题?

解析json的方法

  public static <T> T fromJson(String json, Class<T> classOfT) {
    Gson gson = new Gson();
    T obj = gson.fromJson(json, classOfT);
    return obj;
  }

1 个答案:

答案 0 :(得分:2)

在你的班上,

private Date redemptionStartDate;
private Date redemptionEndDate;

将此更改为

private long redemptionStartDate;
private long redemptionEndDate;

然后你可以使用,

private Date redemptionStartDateVal;
private Date redemptionEndDateVal;

并在这些的getter中,将其值设置为:

redemptionStartDateVal = new Date(redemptionStartDate);
return redemptionStartDateVal;

请参阅:https://docs.oracle.com/javase/7/docs/api/java/sql/Date.html#Date(long)