java中如何将json字符串同对象之间相互转换呢?
下文笔者讲述json字符串和对象之间相互转换的方法分享,如下所示
JSON字符串和对象互相转换的实现思路
字符串转对象(字符串转json数组) JSON.parseArray JSON对象转字符串 JSONObject.toJSONString 或 JSON.toJSONString例:json字符串和对象之间相互转换
//定义一个实体类 @Data pubilc class UserVo { private String name; private Long age; } //json字符串转换为对象 String jsonStr = "{\"name\":\"猫猫\",\"age\":22}"; JSONArray jsonArray = JSON.parseArray(jsonStr); UserVo UserVo = (UserVo) JSONObject.parseArray(jsonArray.toJSONString(), UserVo.class); //多个对象 String jsonStr = "[{\"name\":\"猫猫\",\"age\":22},{\"name\":\"狗狗\",\"age\":17}]"; JSONArray jsonArray = JSON.parseArray(jsonStr); list<UserVo> userList = JSONObject.parseArray(jsonArray.toJSONString(), UserVo.class) String userStr = "{\"userList\":[{\"name\":\"猫猫\",\"age\":22},{\"name\":\"狗狗\",\"age\":17}]}"; JSONObject userJson = JSON.parseObject(userStr); JSONArray userArray = userJson.getJSONArray("userList"); //第一种解析方式:直接解析为对象list List<UserVo> studentsList = JSONObject.parseArray(studentArray.toJSONString(), UserVo.class); for (int i = 0; i < userArray.size(); i++) { JSONObject user = userArray.getJSONObject(i); UserVo UserVo = new UserVo(); UserVo.setStudentName(student.getString("studentName")); UserVo.setStudentAge(student.getString("studentAge")); } //对象转json字符串 //方式1: String jsonObjectStr = JSONObject.toJSONString(userList); //方式2: String jsonObjectStr = JSON.toJSONString(userList);
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。