1. 程式人生 > >java 對json的處理,主流json jar 包轉換方式

java 對json的處理,主流json jar 包轉換方式

主流Java json 庫的實現分析: https://blog.csdn.net/u013063153/article/details/73163624
 

1.fastjson

主要處理物件是JSON,通過JSON.toJSONString(obj) 來將資料轉為json 格式,通過 JSON.parseObject 將資料轉換為所需格式

其他型別轉為json 型別的String
 String json = JSON.toJSONString(model); // serializes model to Json
 
 jsonString 轉其他型別
 Model model2 = JSON.parseObject(json, Model.class); // deserializes json into model2
 
 其他型別轉jsonObject
JSONObject jb = JSON.parseObject(String text);

2.gson

主要處理物件是Gson ,通過Gson.toJson(obj) 轉為json 格式 ,通過Gson.fromJson 轉換為所需的java物件

String 型別轉 gson, gson 轉其他型別
        Gson gson = new Gson();
        String json = gson.toJson(str);
        System.out.println(json);
        String fromJson = gson.fromJson(json, String.class);
        System.out.println(fromJson);
        json 轉 map
        Map<String,Object> map = new Gson().fromJson(urlGetToQualifiedPath, new TypeToken<HashMap<String,Object>>(){}.getType());//gson

3.json-lib

JSONObject fromObject = JSONObject.fromObject(JsonMessage.str);
        System.out.println(fromObject);
        String bean = (String) JSONObject.toBean(fromObject, String.class);
        System.out.println(bean);

4.jackson

主要是ObjectMapper物件
        json 轉  map
        String responseMessageGet = TestOKHttp.getResponseMessageGet(url);
         ObjectMapper mapper = new ObjectMapper();
         Map<String,String> reMap = null;
        reMap = mapper.readValue(responseMessageGet, new TypeReference<Map<String,Object>>(){});
        map 轉 json
         ObjectMapper mapper = new ObjectMapper();
           String jsonReturn = null;
        jsonReturn = mapper.writeValueAsString(map);