通过以下语句,可以转换JSON中日期到JAVA Date类型
JSONUtils.getMorpherRegistry().registerMorpher(new DateMorpher(new String[] {"yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss"}));
JSONUtils.getMorpherRegistry().registerMorpher(new DateMorpher(new String[] {"yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss"}));
举例说明
public class TestBean{
private Date date;
private String des;
//省去getter和setter
}
假设现在有一个JSONObject名为jobject,下面是它的toString()
{"des":"这是一个测试","date":""}
然后使用toBean方法
TestBean tbean = (TestBean)JSONObject.toBean(jobject,TestBean.class);
会报错:net.sf.ezmorph.MorphException: Unable to parse the date,因为jobject中的date是空值导致无法解析
方法一:在生成jobject的时候限制其date不为空
方法二:使用jobject.remove("date");删除jobject中的date