zoukankan      html  css  js  c++  java
  • JAVA 几款Json library的比较

    JSON是JavaScript object notation的缩写,是一种轻量级的描述数据的方式,与XML相比,它更小更快更易解析,此外,JSON还具有跨平台的优势。这下面这篇文章我们将要比较7种Java JSON库,我们将测量做Java和JSON对象的相互转换,存取Json对象到文件的速度。

    Jackson Library

    Jackson是一种“多目的的Java库,它的目标是更快,更轻,更易用”,此外他还提供了3种方法来处理JSON格式

    1. 流式API: 能够增量解析/生成JSON

    2. 树形模型:在内存中以树形结构来描述JSON文档

    3. 数据绑定:JSON与POJO相互转换

    Goole-Gson Library

    第二个是Gson,它也支持JSON与Java对象的相互转换,并请求支持符合JSON格式的String直接转到JAVA对象而不需要放annotation。

    GSON的优点是

    1. 提供一个toJson()和fromJson()方法实现JAVA与JSON对象的互转,非常方便

    2. 支持JAVA泛型

    3. 支持任意复杂的对象

    4. allow pre-existing unmodifiable objects to be converted to and from JSON

    5. allow custom representation for objects

    后面几个JSON库都是无名氏,在下面的图里你会看到他们的名字

    基准

    我们的测试机器配置为

    2.5GHz I5 处理器,Win7 64位,4GB DDR3内存

    下面这几幅图画出了集中json库的表现

    上图可以看出,序列化和反序列化小数据时,Gson都是最快的

    在序列化反序列化大一点的数据时,Gson的成绩倒是不出彩,Jackson表现更好

    对于手机用户而言,jar包的大小也很重要,从下图可以看出,Gson jar包相当之小

    结论

    对于小规模的数据,Gson表现更好,对于大规模数据Jackson更快

  • 相关阅读:
    使用静态工厂方法的好处和坏处
    xUtils3源码分析(一):view的绑定
    在laravel之外使用eloquent
    ruby里面的毒瘤
    ruby的代码风格
    ruby里面的属性访问器
    ruby里面module和class的区别
    unity里面查找所有物体
    android studio安装须知
    intellij系列ide配置
  • 原文地址:https://www.cnblogs.com/zhouzhuo/p/4109046.html
Copyright © 2011-2022 走看看