类型转换(Json、JsonObject、List、Map、实体类)
程序员文章站
2022-06-15 12:38:09
...
1.实体类转JsonObject、JsonArray
//Student student = new Student();
//student为实体类对象,格式为json
//Course为学生类下课程类,属于一对多
//使用的是阿里下的com.alibaba.fastjson包
JSONObject jsonObject = JSONObject.parseObject(JSON.toJSONString(student));
Map<String,Object> map = (Map<String,Object>)jsonObject;
String errMsg = (String) map.get("errMsg");
String ext = (String) map.get("ext");
Integer code = (Integer) map.get("result");
Object courses = map.get("details");
List<Course> list = JSONObject.parseArray(courses.toString(), Course.class);
2.json字符串转实体类
//jsonString为json字符串对象
//import com.alibaba.fastjson.*;
Student student = null;
try {
//因为接收到的消息可能转化异常,需要捕获
student = JSON.parseObject(jsonString, new TypeReference<Student>() {);
} catch (JSONException e) {
//异常处理
}
3.Map转换实体对象
org.apache.commoms.beanutils.BeanUtils.populate(实体对象, Map集合)