赞
踩
我们常用的json工具有Google的Gson,JackJson,阿里的fastjson,这里我们加入一个IBM的解析工具。看代码
- String content = resultSearch.getResponseContent();
- long t1=System.currentTimeMillis();
- net.sf.json.JSONObject json = net.sf.json.JSONObject.fromObject(content);
- if (json.get("searchResults") != null) {
- net.sf.json.JSONArray obj = net.sf.json.JSONArray.fromObject(json.get("searchResults") + "");
- for (int i = 0; i < obj.size(); i++) {
- //
- }
- System.out.println("obj.size="+obj.size());
- }
- long t2=System.currentTimeMillis();
- System.out.println(t2-t1);
-
- long t3=System.currentTimeMillis();
- com.alibaba.fastjson.JSONObject responseJson = com.alibaba.fastjson.JSONObject.parseObject(content);
- if (json.get("searchResults") != null) {
- com.alibaba.fastjson.JSONArray obj = com.alibaba.fastjson.JSONArray.parseArray(responseJson.get("searchResults") + "");
- for (int i = 0; i < obj.size(); i++) {
- //
- }
- System.out.println("obj.size="+obj.size());
- }
- long t4=System.currentTimeMillis();
- System.out.println(t4-t3);
-
- long t5=System.currentTimeMillis();
- com.ibm.json.java.JSONObject jsn = com.ibm.json.java.JSONObject.parse(content);
- if (json.get("searchResults") != null) {
- com.ibm.json.java.JSONArray obj = com.ibm.json.java.JSONArray.parse(jsn.get("searchResults") + "");
- for (int i = 0; i < obj.size(); i++) {
- //
- }
- System.out.println("obj.size="+obj.size());
- }
- long t6=System.currentTimeMillis();
- System.out.println(t6-t5);
-
- long t7=System.currentTimeMillis();
- Gson gson = new Gson();
- JsonElement element=gson.toJsonTree(content);
- com.google.gson.JsonObject jsonObject= element.getAsJsonObject();
- if (jsonObject.get("searchResults") != null) {
- com.google.gson.JsonArray obj = jsonObject.get("searchResults").getAsJsonArray();
- for (int i = 0; i < obj.size(); i++) {
- //
- }
- System.out.println("obj.size="+obj.size());
- }
- long t8=System.currentTimeMillis();
- System.out.println(t8-t7);
这里的运行结果是:
obj.size=5679
13872
obj.size=5679
381
obj.size=5679
298
而Gson则没有解析成功,抛了个异常,可能写法有问题。
这样来看,阿里的fastjson及IBM的json解析工具在速度上远远快与JackJson。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。