json转换数据时发生异常:java.lang.reflect.InvocationTargetException

使用hibernate查询数据,用json转换数据时发生异常:java.lang.reflect.InvocationTargetException

原因分析:

在使用json时, json中只支持java.util.Date 中的Date类 ,

 

而不支持java.sql.Date 中的类,而hibernate映射的是java.sql.Date。

 

因此需做一下转换才能正常使用json转换


1.java.util.Date date = new Date(model.getCreateDate().getTime());


vo.setCreateDate(date);


其中:model.getCreateDate()是hibernate查询出的Date,date是转化后需要的Date.


2.也可以在json转换时,通过设置JsonConfig来转换:

JsonConfig config = new JsonConfig();  


config.setIgnoreDefaultExcludes(false);  


config.registerJsonValueProcessor(Date.class,  


new DateJsonValueProcessor("yyyy-MM-dd HH-mm-ss"));


JSONArray resultArray = new JSONArray();


 resultArray = JSONArray.fromObject(list,config);



你可能感兴趣的:(json转换数据时发生异常:java.lang.reflect.InvocationTargetException)