介绍
这篇文章给大家介绍利用java怎么在将对象转换为json,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
<强> 1。JSON数组和对象的区别强>
JSONArray是将数据转换为数组形式:
strArray:[{“地址”:“北京市西城区”,“年龄”:“23”、“名称”:“JSON”}]
使用时需要用数组方式读取JSON里面的数据,strArray [0] .address;
JSONObject是将数据转换为对象形式:
strJson:{“地址”:“北京市西城区”,“年龄”:“23”、“名称”:“JSON”}
使用时直接使用对象方式读取JSON里面的数据,strArray.address;
<强> 2。对象转换为JSON 强>
先将java对象转换为JSON对象,在将JSON对象转换为JSON字符串
//1,使用JSONObject JSONObject json =, JSONObject.fromObject (stu);//2,使JSONArray用 JSONArray 数组=JSONArray.fromObject (stu);,, String strJson=json.toString (); String strArray=array.toString ();
<强> 3。json字符串转换为java对象强>
同样先将json字符串转换为json对象,再将json对象转换为java对象,如下所示。
JSONObject obj =, new JSONObject () .fromObject (jsonStr);//将json字符串转换为json对象以前>将json对象转换为java对象
Person jb =,(人)JSONObject.toBean (obj, Person.class);//将建json对象转换为人对象实例扩展:
import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import 并不知道; import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class  MainClass { ,public static  void main (String [], args), { TestJsonBean才能(); TestJsonAttribute才能(); TestJsonArray才能(); ,} ,@SuppressWarnings (“rawtypes") ,private static void  TestJsonArray (), { Student 才能;student1 =, new 学生(); student1.setId才能(1); student1.setName才能(“jag"); student1.setSex才能(“man"); student1.setAge才能(25); student1.setHobby才能(new String[]{“篮球“,“游戏“}); Student 才能;student2 =, new 学生(); student2.setId才能(2); student2.setName才能(“tom"); student2.setSex才能(“woman"); student2.setAge才能(23); student2.setHobby才能(new String[]{“上网“,“跑步“}); List<才能;Student>, list =, new ArrayList(); list.add才能(学生1); list.add才能(学生二); JSONArray 才能;JSONArray =, JSONArray.fromObject(列表); System.out.println才能(jsonArray.toString ()); JSONArray 才能;new_jsonArray=JSONArray.fromObject (jsonArray.toArray ()); Collection 才能;java_collection=JSONArray.toCollection (new_jsonArray); 如果才能(java_collection !=null ,,, ! java_collection.isEmpty ()) {才能 ,,Iterator 它=java_collection.iterator (); ,,,(it.hasNext ()) ,,{ ,,,JSONObject jsonObj=JSONObject.fromObject (it.next ()); ,,,Student 斯图=(学生),JSONObject.toBean (jsonObj Student.class); ,,,System.out.println (stu.getName ()); ,,} ,,} ,} ,private static void  TestJsonAttribute (), { ,/* * ,,*,创建json对象并为该对象设置属性 ,,*/JSONObject 才能;jsonObj =, new JSONObject (); jsonObj.put才能(“Int_att" 25);//添加int型属性 jsonObj.put才能(“String_att",“str");//添加字符串型属性 jsonObj.put才能(“Double_att", 12.25);//添加双型属性 jsonObj.put才能(“Boolean_att",真);//添加布尔型属性//才能添加JSONObject型属性 JSONObject 才能;jsonObjSon =, new JSONObject (); jsonObjSon.put才能(“id",, 1); jsonObjSon.put才能(“name",,“tom"); jsonObj.put才能(“JSONObject_att" jsonObjSon);//才能添加JSONArray型属性 JSONArray 才能;JSONArray =, new JSONArray (); jsonArray.add才能(“array0"); jsonArray.add才能(“array1"); jsonArray.add才能(“array2"); jsonArray.add才能(“array3"); jsonObj.put才能(jsonArray“JSONArray_att",,); System.out.println才能(jsonObj.toString ()); System.out.println才能(“Int_att:“+ jsonObj.getInt (“Int_att")); System.out.println才能(“String_att:“+ jsonObj.getString (“String_att")); System.out.println才能(“Double_att:“+ jsonObj.getDouble (“Double_att")); System.out.println才能(“Boolean_att:“+ jsonObj.getBoolean (“Boolean_att")); System.out.println才能(“JSONObject_att:“+ jsonObj.getJSONObject (“JSONObject_att")); System.out.println才能(“JSONArray_att:“+ jsonObj.getJSONArray (“JSONArray_att")); null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null 利用java怎么在将对象转换为json