一.转换公式
二.代码示例如下。
1.json字符串和json对象以及java对象之间的转换。
String jsonString = "{'name':'优秀的男人','age':'25'}";
// json字符串转json对象。
JSONObject jsonObject = JSON.parseObject(jsonString);
System.out.println(jsonObject);
// json字符串转java对象,前提条件是json字符串的字段和Java对象的字段名相同,否则为null。
HelloTest test = JSON.parseObject(jsonString, HelloTest.class);
System.out.println(test);
// json对象转java对象,前提是字段名称一值,不然为null。
HelloTest test1 = JSON.toJavaObject(jsonObject, HelloTest.class);
// java对象转json对象。
JSONObject object= (JSONObject)JSON.toJSON(test1);
// json对象和Java对象转json字符串
String string = JSON.toJSONString(test1);
String string1 = JSON.toJSONString(object);
System.out.println(string);
/* {"name":"优秀的男人","age":"25"}
HelloTest(age=25, name=优秀的男人, password=null, title=null, values=null, hello=null, listTitle=null)
{"age":"25","name":"优秀的男人"} */
2.json数组字符串和java集合以及json数组的转换。
// json字符串数组和Java集合以及json数组转换
String suZhu = "[{'name':'优秀的男人','age':'25'},{'name':'好男人','age':'18'}]";
// json字符串数组和Java集合
List<HelloTest> list = JSON.parseArray(suZhu, HelloTest.class);
list.forEach(e-> System.out.println(e));
JSONArray array = (JSONArray) JSON.toJSON(list);
// Json数组字符串转换Json数组
JSONArray arraySuZhu = (JSONArray) JSON.toJSON(suZhu);
//json数组不能直接转java集合间接的转。先转string再转list
List<HelloTest> listTwo = JSON.parseArray(JSON.toJSONString(arraySuZhu),HelloTest.class);
//所有转json字符串都是json.toJsonString(参数)
3. Gson类SONArray可以直接转为json字符串
3.1Gson类中的toJson()方法,可以直接把一个list转为json格式。
Gson gson = new Gson();
// list转Json字符串
String JsonString = gson.toJson(list);
3.2 使用JSONArray json=JSONArray.fromobject(list);在调用json.toString()方法转换成字符串
JSONArray ja = JSONArray.fromObject(list);
// list转Json字符串
String JsonString = ja.toString();