JSON數據的處理:java
1.阿里巴巴的fastjson.jarjson
依賴:數組
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.58</version> </dependency>
import java.util.List; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.TypeReference; public class FastJSONHelper { /** * 將java類型的對象轉換爲JSON格式的字符串 * @param object java類型的對象 * @return JSON格式的字符串 */ public static <T> String serialize(T object) { return JSON.toJSONString(object); } /** * 將JSON格式的字符串轉換爲java類型的對象或者java數組類型的對象,不包括java集合類型 * @param json JSON格式的字符串 * @param clz java類型或者java數組類型,不包括java集合類型 * @return java類型的對象或者java數組類型的對象,不包括java集合類型的對象 */ public static <T> T deserialize(String json, Class<T> clz) { return JSON.parseObject(json, clz); } /** * 將JSON格式的字符串轉換爲List<T>類型的對象 * @param json JSON格式的字符串 * @param clz 指定泛型集合裏面的T類型 * @return List<T>類型的對象 */ public static <T> List<T> deserializeList(String json, Class<T> clz) { return JSON.parseArray(json, clz); } /** * 將JSON格式的字符串轉換成任意Java類型的對象 * @param json JSON格式的字符串 * @param type 任意Java類型 * @return 任意Java類型的對象 */ public static <T> T deserializeAny(String json, TypeReference<T> type) { return JSON.parseObject(json, type); } }
2.Google的Gsoncookie
String json = "{\n" + " \"rst\": 0,\n" + " \"msg\": \"ok\",\n" + " \"data\": {\n" + " \"cookie\": \"JSESSIONID=abcntKeuJhop56LGykfdw\"\n" + " }\n" + "}"; JsonObject jsonObject = (JsonObject) new JsonParser().parse(json); System.out.println("rst:" + jsonObject.get("rst").getAsInt()); System.out.println("msg:" + jsonObject.get("msg").getAsString()); System.out.println("data:" + jsonObject.get("data").getAsJsonObject().get("cookie").getAsString());
3. net.sf.json 對象