手记

【总结】Android开发常用的Json库

 Android开发过程中会不可避免的调用服务端的接口来为自己提供数据支持。在这个工程中要频繁的和服务端接口进行数据交换,目前大多数接口提供的数据是Json类型的,接口需要的参数有时候也需要客户端以Json的格式传给服务器。这就需要我们进行数据的序列化和反序列化。Java对于处理JSON数据的序列化与反序列化目前常用的类库有Gson、FastJSON、Jackson、jettison以及json-lib。jettison和json-lib这两个门已经不更新了所有建议不用使用了。以下是我对FastJson、Gson和Jackson进行数据解析的比较,接口返回的数据总量在5M。


FastJson

    

Gradle引用地址:

compile 'com.alibaba:fastjson:1.1.60.android'

打印出来的时间是:

fastJson: time=14890196089

关于fastjson具体细节的学习在(https://github.com/alibaba/fastjson)


Gson


Gradle引用地址:

compile 'com.google.code.gson:gson:2.8.1'

打印出来的时间是:

Gson: time=6330989842

关于gson具体详细的学习在(https://github.com/google/gson)


Jackson


Jackson我还真没有找到gradle的引用地址,如有人知道烦请后台留言一下。我是直接下载的jar包,下载地址在(http://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core)

打印出来的时间是:

Jackson: time=6957492341

总结

    就以上结果看解析优势还是很明显的。Jackson我嫌它麻烦不怎么使用,经常项目中使用到的是fastjson和gson。对于数据量比较大时gson的解析速度拉fastjson几条街,对于数据量比较小的解析基本不相上下。fastjson自己说比gson快6倍,比jackson快3倍而且都有测试结果。还是非常有自信的,我的意见是具体项目具体使用。

原文链接:http://www.apkbus.com/blog-914653-68472.html

0人推荐
随时随地看视频
慕课网APP