最近用到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小测试的更多相关文章

  1. FastJSON、Gson和Jackson性能对比

    Java处理JSON数据有三个比较流行的类库FastJSON.Gson和Jackson.本文将测试这三个类库在JSON序列化和反序列化的方面表现,主要测试JSON序列化和反序列化的速度.为了防止由于内 ...

  2. FastJson和Gson和Json数据解析分析和用法

    首先分析下目前号称最快的FastJson,这个是所有人都验证过的,解析速度确实比较快,不过也需要根据数据量来看,数据量小的时候,Gson性能要稍微优于FastJson,但在数据量大解析的情况下,Fas ...

  3. FastJSON、Gson、Jackson(简单了解使用)

    下载地址(maven) Jackson:http://mvnrepository.com/search?q=jackson FastJson:http://mvnrepository.com/sear ...

  4. Fastjson和Gson零碎总结

    一:用于测试的类 User类 import lombok.Data; import lombok.experimental.Accessors; /** * @author silentdoer * ...

  5. Cad 二次开发关于SelectCrossingPolygon和SelectFence返回结果Status为error的小测试

    CAD2008的二次开发,有个很奇怪的现象,只要你选择的点集不在当前视图上SelectCrossingPolygon和SelectFence返回结果Status就会为error,所以要获取正确的结果, ...

  6. python 程序小测试

    python 程序小测试 对之前写的程序做简单的小测试 ... # -*- encoding:utf-8 -*- ''' 对所写程序做简单的测试 @author: bpf ''' def GameOv ...

  7. PHP中使用PDO操作事务的一些小测试

    关于事务的问题,我们就不多解释了,以后在学习 MySQL 的相关内容时再深入的了解.今天我们主要是对 PDO 中操作事务的一些小测试,或许能发现一些比较好玩的内容. 在 MyISAM 上使用事务会怎么 ...

  8. Android进阶笔记17:3种JSON解析工具(org.json、fastjson、gson)

    一. 目前解析json有三种工具:org.json(Java常用的解析),fastjson(阿里巴巴工程师开发的),Gson(Google官网出的),其中解析速度最快的是Gson. 3种json工具下 ...

  9. 使用fastjson,gson解析null值的时候键保留

    由于业务需求...所以查阅资料,总结如下: 使用gson实现方法:只需要把new Gson()改为: new GsonBuilder().serializeNulls().create(); 就可以了 ...

随机推荐

  1. iOS 初级数据持久化

    数据持久化 什么是数据持久化? 数据的永久存储 为什么要做数据持久化::存储在内存中的数据,程序关闭,内存释放,数据丢失,这种数据是临时的 数据持久化的本质:数据保存成文件,存储到程序的沙盒中 一.沙 ...

  2. Python实现DBScan

    Python实现DBScan 运行环境 Pyhton3 numpy(科学计算包) matplotlib(画图所需,不画图可不必) 计算过程 st=>start: 开始 e=>end: 结束 ...

  3. HSSF,XSSF和SXSSF的区别

    HSSF是POI工程对Excel 97(-2007)文件操作的纯Java实现 XSSF是POI工程对Excel 2007 OOXML (.xlsx)文件操作的纯Java实现 从POI 3.8版本开始, ...

  4. python-操作mssql数据库

    准备工作: cmd 命令行下安装pymssql: pip install pymssql 查询的数据库如下: 代码如下: #coding=utf-8 import pymssql class MSSQ ...

  5. spring--注入类型--构造方法(不常用)

    3.3.1.1. Constructor Injection Constructor-based DI is effected by invoking a constructor with a num ...

  6. JS--事件对象中部份浏览器不兼容方法

    测试时主要用的浏览器是Firefox 28.0.IE11.IE8.Chrome 34.0  一.什么是事件对象:当触发某个事件的时候,会产生一个事件对象,这个对象包含着所有的与事件有关的信息,包括导致 ...

  7. poj 1325 Machine Schedule 最小点覆盖

    题目链接:http://poj.org/problem?id=1325 As we all know, machine scheduling is a very classical problem i ...

  8. Brush Mode --- Nyoj 737 分类: Brush Mode 2014-03-25 08:10 202人阅读 评论(0) 收藏

    石子合并(一) 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述     有N堆石子排成一排,每堆石子有一定的数量.现要将N堆石子并成为一堆.合并的过程只能每次将相邻的两堆 ...

  9. JS控制图片拖动 放大 缩小 旋转 支持滚轮放大缩小 IE有效

    <html> <head>     <title>图片拖动,放大,缩小,转向</title> <script type="text/ja ...

  10. jQuery中的height()、innerheight()、outerheight()的区别总结

    在前端jQuery代码中突然看到outerheight(),第一感觉就是,这是什么鬼?然后仔细查阅了一下,居然发现还有这么多相似的东西. 在jQuery中,获取元素高度的函数有3个,它们分别是heig ...