天天看點

Java 取複雜json對象(fastjson)Java 取複雜json對象(fastjson)

Java 取複雜json對象(fastjson)

記錄一下小菜雞的學習之路

剛入職做項目,最近寫代碼的時候,調用之前公司大佬封裝好的資料庫接口,傳回的Json資料很複雜,需要取其中的值。記錄一下友善以後遇到解決。

**

正常來說是将json轉為對象來進行操作,但由于公司架構限制,很麻煩是以隻能直接取來使用。

**

不多BB直接上代碼

//json資料  
{
    "msg":"請求成功",
    "Total":"1",
    "Rows":[
        {
            "ispay":"0"
        }
    ],
    "Subrows":[

    ],
    "status":"0"
}
           
//cs 是調用接口以後傳回的json資料 
String cs = payServlet.doPay("checkmstatus", json);

//通過fastjson中的方法将json字元串轉為json對象
JSONObject jscs= JSONObject.parseObject(cs);

//建立json數組來接收jscs中的Rows數組
jsonArray= jscs.getJSONArray("Rows");

//根據下表讀取剛剛Rows中的屬性,get中為json數組中json對象的名稱
String lispay = (String) jsonArray.getJSONObject(0).get("ispay");

//然後得到lispay就可以正常做業務邏輯
...
           

我要取得資料是在json數組中的json對象,如果隻是取json字元串中的對象直接.get(“屬性”)就可以取到,多層嵌套就需要get多個屬性,同樣的道理。