App下載

淺談Java中幾種經(jīng)常用來格式化json的工具類

芭比萌妹 2021-08-20 14:07:52 瀏覽數(shù) (3366)
反饋

json數(shù)據(jù)格式是目前前端用的比較多的數(shù)據(jù)格式,因此也經(jīng)常需要對json數(shù)據(jù)格式進行解析格式化。下面,和大家分享關于在Java中幾種用來格式化json數(shù)據(jù)格式的常用工具類的使用。

前置條件

導入以下 jar

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

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.11</version>
        </dependency>

一、數(shù)組格式json轉成 隔開的字符串

業(yè)務場景

多選項時,前端一般傳入數(shù)組包裹的數(shù)據(jù)。["滅火器","消防栓","泡沫"]

我們保存是沒有問題,但是再返給前端時,前端需要再做處理才能正常渲染,不然格式就不對了!

所以我們可以在保存的時候做上一層處理

代碼如下:

	public static String ArrayToStr(String array){
        List<String> arrList = JSONArray.parseArray(array, String.class);
        return StringUtils.strip(arrList.toString(),"[]").replace(" ","");
    }

執(zhí)行結果如下:

在這里插入圖片描述 

二、String轉List<對象>

我們查詢數(shù)據(jù)庫的時候,有的數(shù)據(jù)格式可能是這樣的:

[{"name":"丁大大","age":"23","like":"釣魚"},{"name":"面條","age":"22","like":"吃飯"}]

數(shù)組包對象的形式,假如我們需要對其進行一定的業(yè)務處理,則需要將格式作一個轉換

代碼如下:

public static List<Map<String,Object>> JsonToList(String json){
        return (List<Map<String, Object>>) JSONArray.parse(json);
    }

執(zhí)行結果:

在這里插入圖片描述

在這里插入圖片描述

三、String轉Map

數(shù)據(jù)格式:

{"name":"丁大大","age":"23","like":"釣魚"}

代碼如下:

public static Map<String,Object> JsonToMap(String json){
        return JSONObject.parseObject(json);
    }

執(zhí)行結果:

在這里插入圖片描述
在這里插入圖片描述 

到此這篇Java幾種常用的格式化json數(shù)據(jù)格式的工具類使用的文章就介紹到這了,更多相關Java Json的內(nèi)容,請搜索W3Cschool以前的文章或繼續(xù)瀏覽下面的相關文章,也希望大家以后多多支持我們!

0 人點贊