FastJSON處理大物件

2021-10-19 13:53:05 字數 895 閱讀 5975

好久沒有寫部落格了,最近的筆記都整理到印象筆記了,等有時間了再移到csdn吧。

今天寫一下fastjson。

fastjson處理大的json物件或陣列時,單純用jsonobject、jsonarray的api不利於效能。

比如反序列化map物件對應的json string。

jsonobject responsejsonobject;

try catch (unsupportedencodingexception e)

for (object object : responsejsonobject.entryset())

這種方式不夠快。

來個快的,在工作中的場景快了三分之二:

private mapgetnormalmap(classclazz, byte response)

reader.endobject();

reader.close();

} catch (unsupportedencodingexception e)

return map;

}private map> getlistmap(byte response)

reader.endobject();

reader.close();

} catch (unsupportedencodingexception e)

return map;

}

這裡注意一下,如果json裡有物件是同乙個,序列化時會"$ref": "$.屬性名或者屬性名.屬性名或者屬性名.屬性名[索引],看你的json物件了",第二種方式不能解析出來。當然,json裡一般物件不放同乙個。

更多的優化:裡面是一些示例,可以自己寫成泛型方法,用來當普用工具。

FastJson與JsonCode效能大比拼

前面有同學對比了fastjson和jsoncode的效能,其認為在從json字串中取部分數值時,jsoncode的效能要遠遠優於fastjson,詳細的內容請翻閱附錄一。然而,正所謂 吾愛吾師,吾更愛真理 抱著這樣一種求真求實的心理,我對文章中的內容進行了探索,力求準確 符合事實。首先,我們還是應該...

Fastjson 泛型 json 轉 物件

通過泛型,將具有相同規律的json串,解析為同乙個物件。1 查詢student物件返回的json串 message 查詢成功 查詢teacher返回的json串。message 查詢成功 2 構建實體類 student類 data是lombok外掛程式的註解 data public class st...

FastJson解析處理內部類問題

1.com.alibaba.fastjson.jsonexception create instance error2.報錯default constructor not found.class.一開始是這樣定義的 class tempdata public string getcount publ...