我有以下JSON对象:
{ “的startDate”: “30/01/2008”, “startPeriod”: “2008”, “dboid”: “5308204301485575800000”, “动作”: “更新”, “网格”: “variantAssigGrid”,“结束日期“:” 30/01/2011" , “endPeriod”: “2011”, “机构”: “5301004301485575300000”}
应用JSONObject.toBean后,开始日期和结束日期将设置为结果bean中的当前系统日期(而不是json字符串中的值)。看起来它们是用新的Date()初始化的。
有没有办法指定日期格式?我查看了JsonConfig类没有太大的成功。
提前致谢!
答案 0 :(得分:1)
注册您自己的处理器......
this.jsonConfigToJSON = new JsonConfig();
this.jsonConfigToJSON.registerJsonValueProcessor(java.util.Date.class, new JsonValueProcessor() {
@Override
public Object processObjectValue(String key, Object value, JsonConfig jsonConfig) {
return process(value, jsonConfig);
}
@Override
public Object processArrayValue(Object value, JsonConfig jsonConfig) {
return process(value, jsonConfig);
}
private Object process(Object value, JsonConfig jsonConfig) {
// For Unix Time
return ((Date) value).getTime() / 1000L;
}
});