這是fastjson1.2.8 jar包及其源碼下載(附帶Gson jar包)下載,以及源碼包,是目前開源json解析包中速度最快的工具包,但其在復(fù)雜的bean類轉(zhuǎn)json的時候存在一定的問題,所以搭配Gson解析一起。
fastjson1.2.8 jar包及其源碼下載(附帶Gson jar包)是阿里巴巴推出的一款很好的java開源json解析器和生成器。其采用獨創(chuàng)的算法,將parse的速度提升到極致,超過目前所有json庫,其中包括曾經(jīng)號稱最快的jackson和google的二進(jìn)制協(xié)議protocol buf。同時fastjson功能強大,完全支持Java Bean、集合、Map、日期、Enum,支持范型,支持自;無依賴,能夠直接運行在Java SE 5.0以上版本;支持Android;開源 (Apache 2.0)等諸多特性也使得其在業(yè)內(nèi)備受好評。
1.json-lib
json-lib最開始的也是應(yīng)用最廣泛的json解析工具,json-lib 不好的地方確實是依賴于很多第三方包,
包括commons-beanutils-1.7.0.jar,commons-collections-3.2.jar,commons-lang-2.4.jar,commons-logging-1.1.jar,ezmorph-1.0.4.jar,jdom.jar,json-lib-2.2.2-jdk15.jar
對于復(fù)雜類型的轉(zhuǎn)換,json-lib對于json轉(zhuǎn)換成bean還有缺陷,比如一個類里面會出現(xiàn)另一個類的list或者map集合,json-lib從json到bean的轉(zhuǎn)換就會出現(xiàn)問題。
json-lib在功能和性能上面都不能滿足現(xiàn)在互聯(lián)網(wǎng)化的需求。
2.開源的Jackson
相比json-lib框架,Jackson所依賴的jar包較少,簡單易用并且性能也要相對高些。
而且Jackson社區(qū)相對比較活躍,更新速度也比較快。
Jackson對于復(fù)雜類型的json轉(zhuǎn)換bean會出現(xiàn)問題,一些集合Map,List的轉(zhuǎn)換出現(xiàn)問題。
Jackson對于復(fù)雜類型的bean轉(zhuǎn)換Json,轉(zhuǎn)換的json格式不是標(biāo)準(zhǔn)的Json格式
3.Google的Gson
Gson是目前功能最全的Json解析神器,Gson當(dāng)初是為因應(yīng)Google公司內(nèi)部需求而由Google自行研發(fā)而來,
但自從在2008年五月公開發(fā)布第一版后已被許多公司或用戶應(yīng)用。
Gson的應(yīng)用主要為toJson與fromJson兩個轉(zhuǎn)換函數(shù),無依賴,不需要例外額外的jar,只依賴于gson-2.7.jar,能夠直接跑在JDK上。
而在使用這種對象轉(zhuǎn)換之前需先創(chuàng)建好對象的類型以及其成員才能成功的將JSON字符串成功轉(zhuǎn)換成相對應(yīng)的對象。
類里面只要有g(shù)et和set方法,Gson完全可以將復(fù)雜類型的json到bean或bean到j(luò)son的轉(zhuǎn)換,是JSON解析的神器。
Gson在功能上面無可挑剔,但是性能上面比FastJson有所差距。
4.阿里巴巴的FastJson
Fastjson是一個Java語言編寫的高性能的JSON處理器,由阿里巴巴公司開發(fā)。
無依賴,不需要例外額外的jar,只需要fastjson-1.2.8.jar,能夠直接跑在JDK上。
FastJson在復(fù)雜類型的Bean轉(zhuǎn)換Json上會出現(xiàn)一些問題,可能會出現(xiàn)引用的類型,導(dǎo)致Json轉(zhuǎn)換出錯,需要制定引用。
FastJson采用獨創(chuàng)的算法,將parse的速度提升到極致,超過所有json庫。
fastjson1.2.8 jar包及其源碼下載(附帶Gson jar包)是繼上篇json解析,我用了原生的json解析,但是在有些情況下我們不得不承認(rèn),一些優(yōu)秀的json解析框架確實十分的好用,今天我們?yōu)榱瞬┛偷谋Y|(zhì)保量,也就不分開寫,我們直接拿比較火的Gson和Fast-json來使用,末尾在進(jìn)行一些分析。