FastJson与Gson小测试
最近用到Json来传输数据,找到两个比较简单的工具 Gson 和 FastJson
随便测试一下两个工具的效率~ 1 package com.json.fast; import java.util.ArrayList;
import java.util.List; import com.alibaba.fastjson.JSON;
import com.demo.module.Student;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken; public class FastJson {
public static void main(String[] args) { List<Student> list=new ArrayList<Student>(); for (int i = 0; i < 500000; i++) {
Student student=new Student();
student.setId(i);
student.setName("Name"+i);
student.setAge(i);
student.setSex("boy"); list.add(student);
} String json=JSON.toJSONString(list);
for (int i = 0; i < 10; i++) {
long time_start = System.currentTimeMillis();
JSON.toJSONString(list);
long time_end = System.currentTimeMillis();
System.out.println("FastJson to JSON 用时:"+(time_end-time_start));
}
System.out.println();
for (int i = 0; i < 10; i++) {
long time_start = System.currentTimeMillis();
JSON.parseArray(json, Student.class);
long time_end = System.currentTimeMillis();
System.out.println("FastJson to List 用时:"+(time_end-time_start));
}
System.out.println(); Gson gson=new Gson();
for (int i = 0; i < 10; i++) {
long time_startg = System.currentTimeMillis();
gson.toJson(list);
long time_endg = System.currentTimeMillis();
System.out.println("Gson to JSON 用时:"+(time_endg-time_startg));
}
System.out.println();
for (int i = 0; i < 10; i++) {
long time_startg = System.currentTimeMillis();
gson.fromJson(json,new TypeToken<List<Student>>(){}.getType());
long time_endg = System.currentTimeMillis();
System.out.println("Gson to List 用时:"+(time_endg-time_startg));
}
}
}
LIST to JSON 用时比较
FastJson to JSON 用时:1188
FastJson to JSON 用时:1034
FastJson to JSON 用时:1201
FastJson to JSON 用时:1450
FastJson to JSON 用时:712
FastJson to JSON 用时:1156
FastJson to JSON 用时:695
FastJson to JSON 用时:1142
FastJson to JSON 用时:680
FastJson to JSON 用时:1206 Gson to JSON 用时:1079
Gson to JSON 用时:1108
Gson to JSON 用时:905
Gson to JSON 用时:1097
Gson to JSON 用时:903
Gson to JSON 用时:1056
Gson to JSON 用时:905
Gson to JSON 用时:903
Gson to JSON 用时:1113
Gson to JSON 用时:897
JSON to LIST 用时比较 FastJson to List 用时:351
FastJson to List 用时:222
FastJson to List 用时:189
FastJson to List 用时:177
FastJson to List 用时:281
FastJson to List 用时:349
FastJson to List 用时:258
FastJson to List 用时:226
FastJson to List 用时:213
FastJson to List 用时:201 Gson to List 用时:1305
Gson to List 用时:745
Gson to List 用时:790
Gson to List 用时:864
Gson to List 用时:886
Gson to List 用时:1168
Gson to List 用时:907
Gson to List 用时:796
Gson to List 用时:914
Gson to List 用时:1206
package com.demo.module; public class Student {
private int id;
private String name;
private int age;
private String sex; public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
} }
不足之处请大家指点 . . .
fastJson 下载:链接: http://pan.baidu.com/s/1kT7hVnx
gson 下载:链接: http://pan.baidu.com/s/1sjLiQRF
FastJson与Gson小测试的更多相关文章
- FastJSON、Gson和Jackson性能对比
Java处理JSON数据有三个比较流行的类库FastJSON.Gson和Jackson.本文将测试这三个类库在JSON序列化和反序列化的方面表现,主要测试JSON序列化和反序列化的速度.为了防止由于内 ...
- FastJson和Gson和Json数据解析分析和用法
首先分析下目前号称最快的FastJson,这个是所有人都验证过的,解析速度确实比较快,不过也需要根据数据量来看,数据量小的时候,Gson性能要稍微优于FastJson,但在数据量大解析的情况下,Fas ...
- FastJSON、Gson、Jackson(简单了解使用)
下载地址(maven) Jackson:http://mvnrepository.com/search?q=jackson FastJson:http://mvnrepository.com/sear ...
- Fastjson和Gson零碎总结
一:用于测试的类 User类 import lombok.Data; import lombok.experimental.Accessors; /** * @author silentdoer * ...
- Cad 二次开发关于SelectCrossingPolygon和SelectFence返回结果Status为error的小测试
CAD2008的二次开发,有个很奇怪的现象,只要你选择的点集不在当前视图上SelectCrossingPolygon和SelectFence返回结果Status就会为error,所以要获取正确的结果, ...
- python 程序小测试
python 程序小测试 对之前写的程序做简单的小测试 ... # -*- encoding:utf-8 -*- ''' 对所写程序做简单的测试 @author: bpf ''' def GameOv ...
- PHP中使用PDO操作事务的一些小测试
关于事务的问题,我们就不多解释了,以后在学习 MySQL 的相关内容时再深入的了解.今天我们主要是对 PDO 中操作事务的一些小测试,或许能发现一些比较好玩的内容. 在 MyISAM 上使用事务会怎么 ...
- Android进阶笔记17:3种JSON解析工具(org.json、fastjson、gson)
一. 目前解析json有三种工具:org.json(Java常用的解析),fastjson(阿里巴巴工程师开发的),Gson(Google官网出的),其中解析速度最快的是Gson. 3种json工具下 ...
- 使用fastjson,gson解析null值的时候键保留
由于业务需求...所以查阅资料,总结如下: 使用gson实现方法:只需要把new Gson()改为: new GsonBuilder().serializeNulls().create(); 就可以了 ...
随机推荐
- 教你怎么安装MongoDB
以下命令以root用户运行:#sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10#echo 'deb http://do ...
- 使用 Swift 制作一个新闻通知中心插件(1)
input[type="date"].form-control,.input-group-sm>input[type="date"].input-grou ...
- iTween基础之功能简介
一.iTween 介绍 .二.iTween 原理.三.iTween 下载.四.iTween 类介绍.五.主要功能介绍 原文地址:http://blog.csdn.net/dingkun520wy/ar ...
- (转)Unity3D游戏开发 NGUI之渐变加载到100%的Loading场景进度条
NGUI 现有的进度条存在的问题: 进度条跳跃式前进,加载到90%后卡住,突然进入下一个场景.接下来就是解决这个问题. 背景 通常游戏的主场景包含的资源较多,这会导致加载场景的时间较长.为了避免这个问 ...
- WPF多窗口传参解决方案
在WPF中,我们的常常涉及到多个窗口之间传递参数的问题,那么该怎么传呢? 答:在窗口的构造函数中添加想要传递的参数.(我表达不好,请看下面代码.) 在主窗口中单机button打开一个新的子窗口. // ...
- windows phone和android,ios的touch事件兼容
1.开发背景 最近用html5写了个小游戏,中间踩过无数坑,有很多甚至百度都百度不到答案,可见html5还真是不成熟,兼容性的复杂度比ie6有过之而无不及,性能那个渣简直无力吐槽.. 好了,吐槽结束, ...
- 不同平台下Java环境变量的设置
http://www.java.com/en/download/help/path.xml
- HDU 5446 Unknown Treasure Lucas+中国剩余定理
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5446 Unknown Treasure 问题描述 On the way to the next se ...
- 使用IntersectionObserver更高效的监视某个页面元素是否进入了可见窗口
比如说,你想跟踪 DOM 树里的一个元素,当它进入可见窗口时得到通知. 也许想实现即时延迟加载图片功能,或者你需要知道用户是否真的在看一个广告 banner. 你可以通过绑定 scroll 事件或者用 ...
- 【python】正则表达式
参考资料:http://deerchao.net/tutorials/regex/regex.htm 1.正则表达式基础 2.python 正则表达式 1.正则表达式基础 元字符: 其他语法: (1) ...