Jackson框架學習
1、jackson 框架:這個框架提供了JsonGenerator ,ObjectMapper兩個類通過這兩個類提供的方法可以將java 對象轉化為json 對象,json 數組格式,也可以將json對象、數組格式轉化為java對象。
2、json-lib框架也可以進行json格式和java 對象之間的相互轉化,json-lib提供的類主要有:JSONObject ,JSONArray....
3、展現使用兩種框架進行相互轉化:
一、json-lib:
package com.inspur.json; import java.util.ArrayList; import java.util.List; import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class JSONTest { public static void main(String[] args) { User u = new User(); u.setName("name1"); u.setAge(1); u.setPhone("123"); User u2 = new User(); u2.setName("name2"); u2.setAge(2); u2.setPhone("321"); List list = new ArrayList(); list.add(u);list.add(u2); // 創建JSONObject 對象 JSONObject jobg = new JSONObject(); // 創建JSONObject 對象 JSONArray arr = new JSONArray(); // 將對象轉化為json對象的格式 JSONObject str = jobg.fromObject(u); // 將list集合轉化為json數組的格式 JSONArray str1 = arr.fromObject(list); System.out.print(str); System.out.print("\n"); System.out.print(str1); }
}
/ 運行結果 /
{"age":1,"name":"name1","phone":"123"} [{"age":1,"name":"name1","phone":"123"},{"age":2,"name":"name2","phone":"321"}]</pre>
二、jackson框架提供的兩個類 JsonGenerator ObjectMapper
package com.jackson.test; import java.util.ArrayList; import java.util.List; import org.codehaus.jackson.JsonEncoding; import org.codehaus.jackson.JsonGenerator; import org.codehaus.jackson.map.ObjectMapper; public class Test { public static void main(String[] args) { User u = new User(); u.setName("name1"); u.setAge(1); u.setSex("man"); User u2 = new User(); u2.setName("name2"); u2.setAge(2); u2.setSex("man"); List list = new ArrayList(); list.add(u); list.add(u2); ObjectMapper obj = new ObjectMapper(); JsonGenerator jg = null;try { jg = obj.getJsonFactory().createJsonGenerator(System.out, JsonEncoding.UTF8); System.out.println("jsonGenerator"); // writeObject可以轉換java對象,eg:JavaBean/Map/List/Array等 jg.writeObject(u); System.out.println(); jg.writeObject(list); System.out.println(); System.out.println("ObjectMapper"); // writeValue具有和writeObject相同的功能 obj.writeValue(System.out, list); } catch (Exception e) { e.printStackTrace(); } }
}
/ 運行結果 /
jsonGenerator {"name":"name1","age":1,"sex":"man"} [{"name":"name1","age":1,"sex":"man"},{"name":"name2","age":2,"sex":"man"}] ObjectMapper [{"name":"name1","age":1,"sex":"man"},{"name":"name2","age":2,"sex":"man"}]</pre>
jackson框架jar包下載:http://download.csdn.net/detail/qh_java/7767473
json 框架jar包下載:http://download.csdn.net/detail/qh_java/7767511
本文由用戶 ec3y 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!