最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

關(guān)于Java中Json的各種處理

 更新時間:2022年06月18日 14:38:44   作者:alex_fung  
這篇文章主要介紹了關(guān)于Java中Json的各種處理方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Java Json的各種處理

一、net.sf.json

1、Json轉(zhuǎn)Map

JSONObject jsonObject = JSONObject.fromObject(jsonStr);
Map<String,Object> map = new HashMap<>();
map.put("code",jsonObject .getInt("code"));

2、Json轉(zhuǎn)實(shí)體

JSONObject jsonObject = JSONObject.fromObject(jsonStr);
ArticleForm articleForm = (ArticleForm) JSONObject.toBean(jsonObject , ArticleForm.class);

如果實(shí)體中帶有List字段,需要指定泛型

Map<String, Class> classMap = new HashMap<String, Class>();
classMap.put("keywords", String.class);
ArticleForm articleForm = (ArticleForm) JSONObject.toBean(data.getJSONObject(i), ArticleForm.class,classMap);

3、Json轉(zhuǎn)集合

List<ArticleForm> list = new ArrayList<>();
JSONArray data = jsonObject.getJSONArray("data");
if (errorCode == 0 && data != null && !data.isEmpty()) {
?? ?for (int i = 0; i < data.size(); i++) {
?? ??? ?Map<String, Class> classMap = new HashMap<String, Class>();
?? ??? ?classMap.put("keywords", String.class);
?? ??? ?ArticleForm articleForm = (ArticleForm) JSONObject.toBean(data.getJSONObject(i), ArticleForm.class,classMap);
?? ??? ?list.add(articleForm);
?? ?}
}

另外一種:

List<ArticleForm> list = new ArrayList<>();
JSONArray data = jsonObject.getJSONArray("data");
if (errorCode == 0 && data != null && !data.isEmpty()) {
?? ?Map<String, Class> classMap = new HashMap<String, Class>();
?? ?classMap.put("keywords", String.class);
?? ?list ?= (List<ArticleForm>) JSONArray.toArray(data, ArticleForm.class,classMap);
}

二、com.alibaba.fastjson

1、Json轉(zhuǎn)Map

JSONObject jsonObject = JSON.parseObject(jsonStr);
Map<String,Object> map = new HashMap<>();
map.put("code",jsonObject .getInt("code"));

2、Json轉(zhuǎn)實(shí)體

ArticleForm articleForm = JSON.parseObject(jsonStr, new TypeReference<ArticleForm>() {});

3、Json轉(zhuǎn)集合

List<ArticleForm> list = JSON.parseObject(jsonStr,new TypeReference<ArrayList<ArticleForm>>() {});

Java常用json處理

// String和json的互相轉(zhuǎn)換
        String str = "{\"status\":200,\"message\":\"\",\"data\":{\"KmList\":[\"總分\",\"語文\",\"數(shù)學(xué)\",\"英語\",\"道德與法治\",\"科學(xué)基礎(chǔ)\"]}}";
        System.out.println("str:"+str);
//        JSONArray arrays = JSON.parseArray(str);        // string轉(zhuǎn)jsonArray
        JSONObject jsonObject = JSON.parseObject(str);    // string轉(zhuǎn)jsonObject
        System.out.println("jsonObject:"+jsonObject);
        String s = jsonObject.toJSONString();             // json(object和Array相同)轉(zhuǎn)string
  
        // json轉(zhuǎn)list<Object>或者object
        String str1 = "[\"總分\",\"語文\",\"數(shù)學(xué)\",\"英語\",\"道德與法治\",\"科學(xué)基礎(chǔ)\"]";
        List<String> list = JSON.parseArray(str1, String.class); // json轉(zhuǎn)list集合,將String.class改成其他對象.class即可
        System.out.println("list:"+JSON.toJSONString(list));
        String s1 = JSON.parseObject(JSON.toJSONString("語文"), String.class);       // json轉(zhuǎn)對象,將String.class改成其他對象.class即可
        System.out.println("s1:"+s1);
        // object轉(zhuǎn)字符串后即可轉(zhuǎn)jsonObject或者jsonArray
 
        // json和map
        Map<String, Object> map = new HashMap<>();
        map.put("xAxis","11");
        map.put("yAxis","2222");
        String json = JSON.toJSONString(map);//map轉(zhuǎn)String
        System.out.println("json:"+json);
        Map<String, Object>  map1 = JSON.parseObject(json, Map.class);     // 轉(zhuǎn)List<Map> parserArray即可
        System.out.println("map1:"+map1);

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Jlabel實(shí)現(xiàn)內(nèi)容自動換行簡單實(shí)例

    Jlabel實(shí)現(xiàn)內(nèi)容自動換行簡單實(shí)例

    這篇文章主要介紹了Jlabel實(shí)現(xiàn)內(nèi)容自動換行簡單實(shí)例,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • Spring MVC請求參數(shù)的獲取教程指南

    Spring MVC請求參數(shù)的獲取教程指南

    本文介紹了SpringMVC中如何獲取各種類型的請求參數(shù),包括基本類型、POJO、數(shù)組、集合以及RESTful風(fēng)格的參數(shù),還討論了請求參數(shù)中文亂碼的解決方案,參數(shù)綁定的注解如@RequestParam,以及自定義類型轉(zhuǎn)換器的實(shí)現(xiàn),需要的朋友可以參考下
    2024-10-10
  • Java實(shí)現(xiàn)KFC點(diǎn)餐系統(tǒng)過程解析

    Java實(shí)現(xiàn)KFC點(diǎn)餐系統(tǒng)過程解析

    這篇文章主要介紹了Java實(shí)現(xiàn)KFC點(diǎn)餐系統(tǒng)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-10-10
  • 解決springboot 連接 mysql 時報錯 using password: NO的方案

    解決springboot 連接 mysql 時報錯 using password: NO的方案

    在本篇文章里小編給大家整理了關(guān)于解決springboot 連接 mysql 時報錯 using password: NO的方案,有需要的朋友們可以學(xué)習(xí)下。
    2020-01-01
  • Kibana的安裝和配置全過程

    Kibana的安裝和配置全過程

    Kibana是一個開源的數(shù)據(jù)分析和可視化平臺,它與Elasticsearch緊密集成,提供了一個直觀的Web界面,使您可以快速地搜索、分析和可視化數(shù)據(jù),在本文中,我們將介紹如何安裝和配置Kibana
    2024-12-12
  • AsyncHttpClient的TimeoutTimerTask連接池異步超時

    AsyncHttpClient的TimeoutTimerTask連接池異步超時

    這篇文章主要為大家介紹了AsyncHttpClient的TimeoutTimerTask連接池異步超時源碼流程解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • Eclipse插件開發(fā)實(shí)現(xiàn)控制臺輸出信息的方法

    Eclipse插件開發(fā)實(shí)現(xiàn)控制臺輸出信息的方法

    今天小編就為大家分享一篇關(guān)于Eclipse插件開發(fā)實(shí)現(xiàn)控制臺輸出信息的方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • 詳解Java設(shè)計模式之抽象工廠模式

    詳解Java設(shè)計模式之抽象工廠模式

    設(shè)計模式是軟件設(shè)計中的一種常見方法,通過定義一系列通用的解決方案,來解決常見的軟件設(shè)計問題,其中,抽象工廠模式是一種非常常見的設(shè)計模式,文中有詳細(xì)的代碼示例供大家參考,感興趣的同學(xué)可以借鑒閱讀
    2023-05-05
  • Java中將String類型轉(zhuǎn)換為int類型的幾種常見方法

    Java中將String類型轉(zhuǎn)換為int類型的幾種常見方法

    在java中經(jīng)常會遇到需要對數(shù)據(jù)進(jìn)行類型轉(zhuǎn)換的場景,這篇文章主要給大家介紹了關(guān)于Java中將String類型轉(zhuǎn)換為int類型的幾種常見方法,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-07-07
  • Java教程之引用類型數(shù)組和繼承的意義詳解

    Java教程之引用類型數(shù)組和繼承的意義詳解

    這篇文章主要介紹了Java教程之引用類型數(shù)組和繼承的意義詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06

最新評論

尼玛县| 永宁县| 贺州市| 东平县| 黔西| 临西县| 克山县| 彩票| 黄陵县| 上思县| 麟游县| 洞口县| 陈巴尔虎旗| 伽师县| 凭祥市| 陇南市| 西宁市| 安化县| 宁城县| 通山县| 漳浦县| 香格里拉县| 汝城县| 静海县| 三亚市| 中阳县| 武穴市| 土默特左旗| 龙陵县| 含山县| 兰州市| 七台河市| 阿克| 徐闻县| 碌曲县| 新建县| 米脂县| 丰城市| 广西| 陕西省| 大宁县|