// 1)简单对象
String json_person = "{\"birthday\":\"1998:10:20\",\"sex\":\"male\",\"name\":\"zhangsan\",\"age\":20}";
// 日期类型需要特殊转换
String[] dateFormats = new String[] {"yyyy-MM-dd HH:mm:ss","yyyy:MM:dd"};
JSONUtils.getMorpherRegistry().registerMorpher(new DateMorpher(dateFormats));
JSONObject jsonObject = JSONObject.fromObject(json_person);
Person person = (Person)JSONObject.toBean(jsonObject,Person.class);
System.out.println(person);
第二三行代码时因为日期类型的特殊转换,所以额外添加。
// 2)集合对象
String json_persons = "[{\"birthday\":\"1998:10:20\",\"sex\":\"male\",\"name\":\"zhangsan\",\"age\":20},{\"birthday\":\"1999:10:20\",\"sex\":\"female\",\"name\":\"lisi\",\"age\":30},{\"birthday\":\"1996:10:20\",\"sex\":\"male\",\"name\":\"wangwu\",\"age\":40},{\"birthday\":\"1997:10:20\",\"sex\":\"female\",\"name\":\"zhaoliu\",\"age\":50}]";
JSONArray jsonArray = JSONArray.fromObject(json_persons);
List<Person> persons = (List<Person>)JSONArray.toList(jsonArray, Person.class);
for(Person p : persons)
{
System.out.println(p);
}