java中实体类和JSON对象之间相互转化
程序员文章站
2022-03-25 08:12:19
...
在需要用到JSON对象封装数据的时候,往往会写很多代码,也有很多复制粘贴,为了用POJO的思想我们可以装JSON转化为实体对象进行操作
package myUtil; import java.io.IOException; import myProject.Student; import myProject.StudentList; import org.codehaus.jackson.map.ObjectMapper; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; /** * 实体类和JSON对象之间相互转化(依赖包jackson-all-1.7.6.jar、jsoup-1.5.2.jar) * @author wck * */ public class JSONUtil { /** * 将json转化为实体POJO * @param jsonStr * @param obj * @return */ public static<T> Object JSONToObj(String jsonStr,Class<T> obj) { T t = null; try { ObjectMapper objectMapper = new ObjectMapper(); t = objectMapper.readValue(jsonStr, obj); } catch (Exception e) { e.printStackTrace(); } return t; } /** * 将实体POJO转化为JSON * @param obj * @return * @throws JSONException * @throws IOException */ public static<T> JSONObject objectToJson(T obj) throws JSONException, IOException { ObjectMapper mapper = new ObjectMapper(); // Convert object to JSON string String jsonStr = ""; try { jsonStr = mapper.writeValueAsString(obj); } catch (IOException e) { throw e; } return new JSONObject(jsonStr); } public static void main(String[] args) throws JSONException, IOException { JSONObject obj = null; obj = new JSONObject(); obj.put("name", "213"); obj.put("age", 27); JSONArray array = new JSONArray(); array.put(obj); obj = new JSONObject(); obj.put("name", "214"); obj.put("age", 28); array.put(obj); Student stu = (Student) JSONToObj(obj.toString(), Student.class); JSONObject objList = new JSONObject(); objList.put("student", array); System.out.println("objList:"+objList); StudentList stuList = (StudentList) JSONToObj(objList.toString(), StudentList.class); System.out.println("student:"+stu); System.out.println("stuList:"+stuList); System.out.println("#####################################"); JSONObject getObj = objectToJson(stu); System.out.println(getObj); } }
以上所述就是本文的全部内容了,希望大家能够喜欢。
更多java中实体类和JSON对象之间相互转化相关文章请关注PHP中文网!
上一篇: Redis集群部署及常用的操作命令
下一篇: [SUCTF 2019]CheckIn
推荐阅读
-
Python中:dict(或对象)与json之间的互相转化
-
java对象与Json字符串之间的转化(fastjson)
-
js中json对象和字符串的理解及相互转化操作实现方法
-
style样式:json对象和字符串相互转化
-
JAXB XML和Java对象相互转化
-
json字符串和json对象的相互转化
-
对numpy的array和python中自带的list之间相互转化详解
-
使用JSONObject将实体类,String类型和JSON类型相互转换(java)
-
JS中数字和字符串之间相互转化的问题
-
速战速决 6 - PHP: 获取 http 请求数据, 获取 get 数据 和 post 数据, json 字符串与对象之间的相互转换