/**
* 将jsonStr中的值写入到对象成员字段中
* */
public static void toObject(Object object, String jsonStr) {
JSONObject dataJson = JSON.parseObject(jsonStr);
JSONArray data = (JSONArray) dataJson.get("data");
for (int i = 0; i < data.size(); i++) {
JSONObject item = (JSONObject) data.get(i);
for (java.util.Map.Entry<String, Object> entry : item.entrySet()) {
String fieldName = entry.getKey();
Object fieldValue = entry.getValue();
@SuppressWarnings("rawtypes")
Class c = object.getClass();
try {
Field field = c.getDeclaredField(fieldName);
field.setAccessible(true);
switch (field.getGenericType().toString()) {
case "class java.lang.Integer":
Integer intvalue = Integer.parseInt(fieldValue
.toString());
field.set(object, intvalue);
break;
case "class java.lang.Double":
Double dubvalue = Double.parseDouble(fieldValue
.toString());
field.set(object, dubvalue);
break;
default:
field.set(object, fieldValue);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
原文:http://www.cnblogs.com/yangxu6069/p/4844134.html