Fastjson使用示例及常見問題(六)

2022-09-06 05:42:08 字數 2864 閱讀 2001

fastjson是阿里巴巴的開源json解析庫,它可以解析json格式的字串,支援將j**a bean序列化為json字串,也可以從json字串反序列化到j**abean。

fastjson相對其他json庫的特點是快,從2023年fastjson發布1.1.x版本之後,其效能從未被其他j**a實現的json庫超越。

fastjson在阿里巴巴大規模使用,在數萬臺伺服器上部署,fastjson在業界被廣泛接受。在2023年被開源中國評選為最受歡迎的國產開源軟體之一。

**示例:

package

com.asd.reserve.utils.fastjson.demo2;

/***

@author

zs * @date 2019/11/22 14:53 */

import

com.alibaba.fastjson.json;

import

com.alibaba.fastjson.jsonobject;

import

j**a.util.arraylist;

import

j**a.util.list;

public

class

fastjsondemo

public person(string id,string name,int

age)

public

string getid()

public

void

setid(string id)

public

string getname()

public

void

setname(string name)

public

intgetage()

public

void setage(int

age)

@override

public

string tostring()

}public

static

void

main(string args)

/***@author: zs on 2020/1/3 9:56

*@param

: *

@return

: *@description:物件與json串互轉

*/public

static

void

method1()

/***@author: zs on 2020/1/3 9:56

*@param

: *

@return

: *@description:list集合與json串互轉

*/public

static

void

method2()

public

static

void

method3()

public

static

void

method4()";

jsonobject jsonobject =jsonobject.parseobject(status);

object o = jsonobject.get("status");

system.out.println(o);

}public

static

void

method5(), ]

}*/string json = ", ]}";

jsonobject jsonobject =jsonobject.parseobject(json);

object success = jsonobject.get("success");

object root = jsonobject.get("root");

list

personlist = json.parsearray(root+"", person.class

); system.out.println(success);}}

view code

/**

* 跳轉到xxl

* @return

xxl-url

*/

public apiresponsegetxxlurl1()";

system.out.println(a);

system.out.println(prettyjson(a));

return

}/*** json 美化

* @param

json

* @return

*/private

static

string prettyjson(string json)

catch

(exception e)

return jsonobject.tojsonstring(jsonobject, true

); }

輸出:

未格式化:

格式化後:

使用的時候會發現fastjson對json的屬性有自己的排序的方式,因為json本來是不保證屬性的次序的。就像上面那樣,我的入參明明是key1在前,但是美化後變成了key2在前。這個時候需要加一句讓fastjson保證字串中json的次序即可。

用這個方法就行了

jsonobject = jsonobject.parseobject(json, feature.orderedfield);
vue-json-viewer

監控專案在公司沒有下下來包,就沒有測試。

fastjson簡單使用

fastjson 是阿里巴巴的開源專案 主要是操作json 與 自定義物件,map,list之間進行的轉換 以下給出了 6種轉換 都是我自己封裝的 一點渣水平,封裝的 方法可以直接拿去用 我都已經測試過的 1.json 轉換 自定義物件 string json user user json.pars...

fastjson 使用技巧

當你有乙個欄位是字串型別,裡面是json格式資料,你希望直接輸入,而不是經過轉義之後再輸出,這時使用jsondirect true引數,如 import com.alibaba.fastjson.annotation.jsonfield public static class model若想將巢狀物...

關於fastjson使用總結

1 背景 專案需要從其他廠商中將資料轉接過來,存到自己的資料庫中,根據三方廠商提供的api介面文件來對接。2 實現 對於這種資料轉接的問題,就像usb轉接頭一樣,兩端的東西肯定是有差異,所以才需要中間這個協議來處理,自然對於資料庫的表結構,就需要加對映表來儲存兩者之間的關係,各種字段雖然不同,但是業...