2017-03-07 103 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數據最流行的解決方案。