Json在先後臺傳輸中,是使用最多的一種數據類型。json生成的方法有不少,本身只是很皮毛的知道點,用的時候,不免會蒙。如今整理下java
第一種:
json
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;swift
一、bean轉爲Json數組
User u = User(); u.setAge(22); u.setUsername("hzucmj"); u.setEnabled(); JSONObject json = JSONObject.fromObject(u); System.out.println(json.toString());
二、List轉爲Jsonspa
User u1 = User(); u1.setAge(22); u1.setUsername("hzucmj"); u1.setEnabled(); User u2 = User(); u2.setAge(20); u2.setUsername("ctf"); u2.setEnabled(); List<Object> list = ArrayList<Object>(); list.add(u1); list.add(u2); JSONArray json = JSONArray.fromObject(list); System.out.println(json.toString());
三、Map轉爲Jsoncode
HashMap<String, Comparable> map = HashMap<String, Comparable>(); map.put("name", "hzucmj"); map.put("age", 22); JSONObject json = JSONObject.fromObject(map); System.out.println(json.toString());
4.建立json對象orm
JSONObject jsonObj = new JSONObject(); jsonObj.put("id",1); jsonObj.put("name","張勇"); jsonObj.put("sex","男"); jsonObj.put("age",24); jsonObj.put("hobby",new String[]{"上網","遊戲","跑步","音樂"});//這裏就是一個String數組:String hobby[];(hobby:愛好) System.out.println("我建立的json:"+jsonObj.toString());
5.json對象轉java對象對象
Student stud = (Student) JSONObject.toBean(jsonObj,Student.class); System.out.println(stud.getName());
6.建立json對象並添加屬性blog
JSONObject json1 = new JSONObject(); json1.put("Int_att",25);//添加int型屬性 json1.put("String_att","str");//添加string型屬性 json1.put("Double_att",12.25);//添加double型屬性 json1.put("Boolean_att",true);//添加boolean型屬性 JSONObject json = new JSONObject(); json.put("年齡",25);//添加int型屬性 json.put("名字","段鑫傑");//添加string型屬性 //添加JSONObject型屬性 JSONObject json2 = new JSONObject(); json2.put("id", 1); json2.put("name", "tom"); json1.put("JSONObject_att",json); //添加JSONArray型屬性 JSONArray jsonArray = new JSONArray(); jsonArray.add("array0"); jsonArray.add("array1"); jsonArray.add("array2"); jsonArray.add("array3"); json1.put("JSONArray_att", jsonArray); System.out.println(json1.toString()); System.out.println("獲取名字:"+json1.getJSONObject("JSONObject_att").get("名字")); System.out.println("JSONArray_att:"+json1.getJSONArray("JSONArray_att"));
第二種:
遊戲
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
String jsonArray = JSONArray.toJSONString(list);
System.out.println("List轉換json:"+jsonArray);
直接調用 JSONArray.toJSONString(list)就行,感受參數基本上都適合。帥吧,畢竟是阿里巴巴嘛。
總結:二者都是基於JDK的輕量級的。菜鳥一枚,多謝你們指點!