fastjson和json的区别是什么?两者区别介绍

在实际java开发中,我们经常会用到fastjson和json,FastJSON是一个Java语言编写的高性能,功能完善,完全支持的标准的JSON库,那fastjson和json的区别是什么?下面来我们就来给大家讲解一下它们之间的区别。

一.fastjson

阿里巴巴FastJson是一个Json处理工具包,包括“序列化”和“反序列化”两部分,它具备如下特征:

速度最快,测试表明,fastjson具有极快的性能,超越任其他的Java Jsonparser。包括自称最快的JackJson;

功能强大,完全支持Java Bean、集合、Map、日期、Enum,支持范型,支持自省;无依赖,能够直接运行在Java SE5.0以上版本;支持Android;开源 (Apache 2.0)

FastjsonAPI入口类是com.alibaba.fastjson.JSON,常用的序列化操作都可以在JSON类上的静态方法直接完成。

public static final Objectparse(Stringtext); //把JSON文本parse为JSONObject或者JSONArray
public static final JSONObjectparseObject(Stringtext); //把JSON文本parse成JSONObject
public static final T parseObject(String text, Classclazz); //把JSON文本parse为JavaBean
public static final JSONArrayparseArray(Stringtext); //把JSON文本parse成JSONArray
public static final List parseArray(String text, Classclazz); //把JSON文本parse成JavaBean集合
public static final StringtoJSONString(Objectobject); //将JavaBean序列化为JSON文本
public static final StringtoJSONString(Objectobject, boolean prettyFormat); //将JavaBean序列化为带格式的JSON文本
public static final ObjecttoJSON(Object javaObject);
将JavaBean转换为JSONObject或者JSONArray。

二.Json

JSON是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

任何支持的类型都可以通过 JSON 来表示,例如字符串、数字、对象、数组等。但是对象和数组是比较特殊且常用的两种类型。

对象:对象在 JS 中是使用花括号包裹 {} 起来的内容,数据结构为 {key1:value1, key2:value2, ...} 的键值对结构。在面向对象的语言中,key 为对象的属性,value 为对应的值。键名可以使用整数和字符串来表示。值的类型可以是任意类型。

数组:数组在 JS 中是方括号 [] 包裹起来的内容,数据结构为 ["java", "javascript", "vb", ...] 的索引结构。在 JS 中,数组是一种比较特殊的数据类型,它也可以像对象那样使用键值对,但还是索引使用得多。同样,值的类型可以是任意类型。

FastJson是阿里的开源框架,被不少企业使用,是一个极其优秀的Json框架,最后大家如果想要了解更多json相关知识,敬请关注奇Q工具网。

推荐阅读:

intellij idea安装步骤有哪些?intellij idea安装步骤

jsonobject怎么转为map?json类型和map有什么区别?

json数据怎么处理?json格式如何转换?