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