1.对象相互转换
//对象转字符串
User user=new User();
JSONObject object = JSONObject.fromObject(user);
String jsonStr=object.toString();
//字符串转对象
JSONObject jsonObj=JSONObject.fromObject(jsonStr);
User user= (User)JSONObject.toBean(jsonObj,User.class);
2 集合转换
JSONArray json = JSONArray.fromObject(userStr);//userStr是json字符串
List<User> users= (List<User>)JSONArray.toCollection(json, User.class);
3 对象中包含对象数组导致解析后数组中对象变成net.sf.ezmorph.bean.MorphDynaBean的解决方法
/**
json字符串转类,类中包含List<其他复杂类>
转换后复杂类会变成 net.sf.ezmorph.bean.MorphDynaBean
再进行强制转换会报错(如:取出集合遍历)
将集合字段放入map中再转换即可
*/
Map<String,Class> classMap = new HashMap<>();
classMap.put("student",NameV.class);//放入 集合字段名,集合中类的class
Teacher vo= (Teacher ) JSONObject.toBean(jsonObject, Teacher.class,classMap);//再进行转换