App下載

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

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

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

前置條件

導(dǎo)入以下 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ù)組格式j(luò)son轉(zhuǎn)成 ,隔開的字符串

業(yè)務(wù)場景

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

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

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

代碼如下:

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

執(zhí)行結(jié)果如下:

在這里插入圖片描述 

二、String轉(zhuǎn)List<對象>

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

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

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

代碼如下:

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

執(zhí)行結(jié)果:

在這里插入圖片描述

在這里插入圖片描述

三、String轉(zhuǎn)Map

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

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

代碼如下:

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

執(zhí)行結(jié)果:

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

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

0 人點(diǎn)贊