2017-03-07 102 views

回答

4

许多JSON实现在市场上可用,其中大多数是开源的。每个人都有特定的优点和缺点。

  • 谷歌GSON
  • 杰克逊
  • org.json等

谷歌GSONclick正式文件

  • 提供简单的toJSON()和fromJson()方法将Java对象转换为JSON,反之亦然
  • 允许预先存在的不可修改的对象转换为从JSON
  • 广泛支持Java的泛型
  • 允许自定义交涉的对象
  • 支持任意复杂的对象(深继承层次和广泛使用泛型类型的)

杰克逊click正式文件

  • 流API或增量解析/生成:读取和JSON内容写入为离散事件
  • 树模型:提供JSON文档
  • 数据绑定的一个可变的内存树表示:转换JSON和从POJO的

一些比较博客点击这里blogs1blog2

我个人做了一个标杆使用GSON VS杰克逊VS简单的JSON

序列化和反序列化10
  • 非常小的物体:谷歌GSON性能比 - 杰克逊和简单的JSON更快
  • 大对象:谷歌GSON性能比 - 杰克逊和简单的JSON
3

主要有以下几种不同速度快:

1 )GSON可以使用Object定义来直接创建所需类型的对象。 JSONObject需要手动解析。

2)org.json是一个简单的树型API。它最大的弱点是需要你在解析它之前将整个JSON文档加载到一个字符串中。对于大型JSON文档,这可能效率低下。 3)到目前为止,org.json实现的最大弱点是JSONException。在你所有的JSON文件中放置一个try/catch块是不方便的。

4)Gson是Android上JSON解析的最佳API。它具有非常小的二进制大小(低于200 KiB),数据绑定速度快,并且具有简单易用的API。 5)GSON和Jackson是在Java世界中管理JSON数据最流行的解决方案。