回答
映射解析JSON到Java bean包含額外的步驟,因此使用原始接口(例如Jackson的流API)將會更快。這樣,你也可以閱讀,直到有你需要的並停止解析。
響應於@sikorski
從Jackson Wiki:
數據綁定使用流API作爲底層JSON 讀/寫系統是建立:因此它具有高性能的[...],但相比純流/增量 處理
這是非常必然有 一些額外的開銷。如果你正在編寫一個通用的Jackson解析器,你顯然不能在其中使用自定義類型。因此,在使用泛型分析器讀取JSON之後,必須構造自定義類型,因此泛型分析器將更快。值得注意的是,這種開銷很小,幾乎從不需要優化。
可以使用json-simple其高性能庫及其使用非常方便:
JSONParser parser=new JSONParser();
System.out.println("=======decode=======");
String s="[0,{\"1\":{\"2\":{\"3\":{\"4\":[5,{\"6\":7}]}}}}]";
Object obj=parser.parse(s);
JSONArray array=(JSONArray)obj;
System.out.println("======the 2nd element of array======");
System.out.println(array.get(1));
System.out.println();
JSONObject obj2=(JSONObject)array.get(1);
System.out.println("======field \"1\"==========");
System.out.println(obj2.get("1"));
s="{}";
obj=parser.parse(s);
System.out.println(obj);
s="[5,]";
obj=parser.parse(s);
System.out.println(obj);
s="[5,,2]";
obj=parser.parse(s);
System.out.println(obj);
不回答我的問題。你應該再讀一遍 – AdrienBrault 2013-04-26 10:51:49
@AdrienBrault:我回答了第一部分解析json,對我來說這意味着解碼它,所以也許我誤解了你的意思。 – Stephan 2013-04-26 11:05:30
那麼,最新的和惡最快的國家之一是文JSON。我在我的項目中使用它,並獲得了20倍的提升。我實際上感到害怕,並進行了雙重檢查,以查看庫的功能是否正確。謝天謝地,它是:) :) Boon已經建立了序列化和去序列化Java Array/Maps和Custom Beans的方法。
更多在這裏:https://github.com/RichardHightower/boon/wiki/Getting-Started
- 1. 在C++中反序列化樹的最快方式是什麼?
- 2. 什麼是反序列化和序列化xml文檔的最快方法?
- 3. 在Java中使用序列化的最佳方法是什麼?
- 4. 序列化和反序列化.NET對象的最快方法
- 5. 什麼是.NET最快的序列化方法?
- 6. JSON中的反序列化和序列化是什麼,
- 7. 什麼是序列化/反序列化JPA實體的最可靠方法?
- 8. 使用restsharp反序列化JSON的最簡單方法是什麼?
- 9. Java:什麼是讀取序列化對象的最佳方法?
- 10. 數據結構最快的序列化/反序列化方案
- 11. 爲JQGrid序列化JSON對象的最佳/最快方法
- 12. 初始化大整數列表的最快方法是什麼?
- 13. 在java中構建JSON字符串的最快方法是什麼?
- 14. 在Java中插入Integral的最快方法是什麼?
- 15. 使用反序列化來編寫Java類來表示簡單JSON文檔的最簡潔方法是什麼?
- 16. 反序列化JSON對象在Java中
- 17. 在Java中反序列化/解析JSON
- 18. 用LINQ反序列化Json的更優雅的方法是什麼?
- 19. Silex - 在JSON中序列化數據庫結果集的最快方法是什麼?
- 20. 序列化和反序列化的快速方法
- 21. 在軌道中交叉列表的最快方法是什麼?
- 22. 在Java中拉取JSON URL最簡單的方法是什麼?
- 23. 什麼是反序列化的正確方法?
- 24. 在scala中反向排序的最好方法是什麼?
- 25. 在python中反向排序的最好方法是什麼?
- 26. 反序列化Java中的JSON對象
- 27. 什麼是反向迭代遍歷Iterator的最快方法
- 28. 類型反序列化JSON的最佳方法
- 29. 什麼是Java中最快的子串搜索方法
- 30. 什麼是從Java中讀取System.in的最快方法?
因此,一些庫提供了一種方法來解析SAX方式的JSON? – AdrienBrault 2013-04-26 07:20:08
@AdrienBrault:是的。像傑克遜。 – 2013-04-26 07:24:27
@enno Shioji請分享一些基準測試結果/統計數據或其他一些文章。 – Sikorski 2013-04-26 07:28:30