项目中用到fastjson,在将json串转换成Javabean的时候版本差异对性能影响较大。
当json串大小比较小时差异不明显,但是项目中发现当json达到1M以上时1.1.15的版本性能很差,需要几十秒。而最新的版本1.2.7仅需要100ms左右。
List<JavaBean> javaBean =JSON.parseArray(json,JavaBean.class);
转换的json串大小为1.53M json格式为:
[ { "id": 210000523,"ds": 6,"bcc": [ { "bc": 200,"p": [ { "tt": 1,"sp": 200.00,"tp": 200.00,"pt": [ ] },{ "tt": 2,{ "tt": 3,"pt": [ ] } ],"sc": [ { "dd": "2015-12-08","sp": [ { "tt": 1,"sp": 200.00 },{ "tt": 2,{ "tt": 3,"sp": 200.00 } ],"cp": 200.00 } ] } ] } ]
使用1.2.7用时:
fastjson:297ms
Jackson:232ms
但是当使用1.1.15时:
fastjson:4995ms