中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么使用fastjson

發布時間:2021-11-15 11:57:14 來源:億速云 閱讀:159 作者:iii 欄目:大數據

本篇內容介紹了“怎么使用fastjson”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

JSONObject的方法

包名: com.alibaba.fastjson maven依賴:

<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>fastjson</artifactId>
	<version>1.2.7</version>
</dependency>

JSONObject的使用

將字符串轉換成JSONObject對象

	String str = "{\"desc\":\"json格式的字符串\",\"sex\":\"男\"}";
	JSONObject jo = JSONObject.parseObject(str);

JSONObject可以將極其復雜的json對象轉換,下面的json語句也可以轉換,并通過相應方法獲得對應的值

{
    "protocol":{
        "itemID":"9527",
        "companyID":"4399",
        "userID":"233"
    },
    "operateInfo":{
        "cooptaskSceneDataPackets":[
            {
                "taskID":"123",
                "runSceneID":"345",
                "dataTagCode":"反對",
                "dataTagID":"",
                "dataTagName":"是的",
                "dataTagBelongOrg":""
            },
            {
                "taskID":"126",
                "runSceneID":"345",
                "dataTagCode":"",
                "dataTagID":"",
                "dataTagName":"是的",
                "dataTagBelongOrg":""
            },
            {
                "taskID":"123",
                "runSceneID":"345",
                "dataTagCode":"無法",
                "dataTagID":"十五日",
                "dataTagName":"是的",
                "dataTagBelongOrg":"五七二"
            },
            {
                "taskID":"124",
                "runSceneID":"235",
                "dataTagCode":"",
                "dataTagID":"",
                "dataTagName":"",
                "dataTagBelongOrg":""
            }
        ]
    }
}

將String對象轉換成實體類

使用JSONObject.parseObject(String text, Class<T> clazz)

	String str ="{\"itemID\":\"9527\",\"companyID\":\"4399\",\"userID\":\"233\"}";
	EntityProtocol entityProtocol = JSONObject.parseObject(str, EntityProtocol.class);

如果類型不匹配則會創建所有屬性均為null的該實體類。

向JSONObject對象添加或者修改屬性

使用.put(key,value)方法
若key參數在原對象中沒有則在原對象中新增key屬性并賦值為value;
若key參數存在則更改key的值為value;

	//JSONObject.put(String key,Object value);
	jo.put("key","value");
	jo.put("sex","修改");

JSONObject.putAll(Map<? extends String, ? extends Object> m) 方法的使用

經測試發現參數可以為JSONOBject,其邏輯為將參數json的屬性及其值依次put到原json對象中

	 String str = "{\"name\":\"測試\",\"sex\":\"男\"}";
	 JSONObject jo = JSONObject.parseObject(str);
	 String str2 = "{\"name\":\"我是\",\"age\":\"13\"}";
	 JSONObject jo2 = JSONObject.parseObject(str2);
	 jo.putAll(jo2);
	 //運行完成后jo為:
	 //{"sex":"男","name":"我是","age":"13"}

JSONArray的使用

JSONArray對象添加元素

使用JSONArray.add(Object e)
只是簡單的將元素e添加到JSONArray數組中,既不校驗e元素是否已存在于原數組中,也不校驗e元素是否跟元素組格式相同

	String str = "{\"name\":\"測試\",\"sex\":\"男\"}";
	JSONArray ja = new JSONArray();
	ja.add(str);
	JSONObject jo = JSONObject.parseObject("{\"name\":\"第二個\",\"age\":\"24\"}");
	ja.add(jo);
	System.out.println(ja);
	//結果為: ["{\"name\":\"測試\",\"sex\":\"男\"}",{"name":"第二個","age":"24"}]  
	JSONObject jo1 = JSONObject.parseObject(str);
	ja.add(jo1);
	System.out.println(ja);
	//結果為: ["{\"name\":\"測試\",\"sex\":\"男\"}",{"name":"第二個","age":"24"},{"sex":"男","name":"測試"}]

獲取JSONArray中某一元素

  • JSONArray.get(int index),JSONArray.getString(int index),JSONArray.getJSONObject(int index)
    這些方法運行正常

  • JSONArray.getByte(int index),JSONArray.getByteValue(int index)
    這些方法運行報錯,沒深究過為什么,估計是string不能轉換成byte類型

	 System.out.println(ja.get(1));
	System.out.println(ja.getString(1));
	System.out.println(ja.getJSONObject(1));
	//System.out.println(ja.getByte(1)); can not cast to byte, value
	//System.out.println(ja.getByteValue(1)); can not cast to byte, value

“怎么使用fastjson”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

平和县| 兰溪市| 青川县| 巴里| 尼玛县| 益阳市| 平塘县| 全州县| 永修县| 遵义县| 将乐县| 淅川县| 毕节市| 聂拉木县| 都安| 木兰县| 无为县| 江津市| 贡嘎县| 独山县| 富源县| 盐边县| 广元市| 鹤壁市| 鄂伦春自治旗| 正宁县| 阿克| 万载县| 巨鹿县| 周至县| 炎陵县| 渭源县| 烟台市| 德令哈市| 新余市| 星座| 上林县| 外汇| 丹阳市| 玉溪市| 大洼县|