高性能JSON库---FastJson(阿里巴巴)

1.FastJSON简介

Fastjson是一个Java语言编写的高性能功能完善的JSON库。它采用一种“假定有序快速匹配”的算法,把JSON
Parse的性能提升到极致,是目前Java语言中最快的JSON库。

下载 

你可以从以下地址中下载fastjson:

Maven中央仓库 http://repo1.maven.org/maven2/com/alibaba/fastjson/

Alibaba OpenSesame开源平台 http://code.alibabatech.com/mvn/releases/com/alibaba/fastjson/

源码

https://github.com/alibaba/fastjson

Fastjson是一个json处理工具包,包括“序列化”和“反序列化”两部分,它具备如下特征:

  1. 速度最快,测试表明,fastjson具有极快的性能,超越任其他的java json parser。包括自称最快的jackson。
  2. 功能强大,完全支持java bean、集合、Map、日期、Enum,支持范型,支持自省。
  3. 无依赖,能够直接运行在Java SE 5.0以上版本
  4. 支持Android。
  5. 开源 (Apache 2.0)

2.简单使用

详细使用的话,大家可以去官网看,介绍很详细,而且是中文。

使用Maven的话,配置pom.xml文件,在dependencies中添加依赖:

[java] view
plain
copy

  1. <dependency>
  2. <groupId>com.alibaba</groupId>
  3. <artifactId>fastjson</artifactId>
  4. <version>1.1.36</version>
  5. </dependency>

下面是简单的测试,参考官网上的数据

[java] view
plain
copy

  1. package org.ygy.fastjson;
  2. import org.junit.Test;
  3. import com.alibaba.fastjson.JSON;
  4. import com.alibaba.fastjson.JSONObject;
  5. import com.alibaba.fastjson.serializer.SerializerFeature;
  6. public class JSONTest{
  7. /**
  8. *
  9. * @author yuguiyang
  10. * @description 序列化
  11. * @time 2013-9-12
  12. * @version 1.0
  13. */
  14. @Test
  15. public void test2JsonString() {
  16. User user = new User(100 , "lufei" , "shishi");
  17. String json = JSON.toJSONString(user);
  18. System.out.println(json);
  19. }
  20. /**
  21. *
  22. * @author yuguiyang
  23. * @description 反序列化为JSONObject对象
  24. * @time 2013-9-12
  25. * @version 1.0
  26. */
  27. @Test
  28. public void testParseObject() {
  29. String json = JSON.toJSONString(new User(1002 , "suolong" , "shishi"));
  30. JSONObject obj = JSON.parseObject(json);
  31. System.out.println(obj);
  32. System.out.println(obj.get("id"));
  33. System.out.println(obj.getString("name"));
  34. }
  35. /**
  36. *
  37. * @author yuguiyang
  38. * @description 反序列化为JavaBean
  39. * @time 2013-9-12
  40. * @version 1.0
  41. */
  42. @Test
  43. public void testParseBean() {
  44. String json = JSON.toJSONString(new User(1002 , "suolong" , "shishi"));
  45. User user = JSON.parseObject(json , User.class);
  46. System.out.println(user.getId() + " , " + user.getName() + " , " + user.getPassword());
  47. }
  48. /**
  49. *
  50. * @author yuguiyang
  51. * @description 将JavaBean对象转换为JSON对象
  52. * @time 2013-9-12
  53. * @version 1.0
  54. */
  55. @Test
  56. public void test2Json() {
  57. User user = new User(222 , "qiaoba" , "haha");
  58. JSONObject obj = (JSONObject) JSON.toJSON(user);
  59. System.out.println(obj.get("id") + ","  + obj.get("name"));
  60. }
  61. @Test
  62. public void testSeria() {
  63. User user = new User(222 , "qiaoba" , "haha");
  64. String json = JSON.toJSONString(user , SerializerFeature.WriteClassName);
  65. User juser = (User) JSON.parse(json);
  66. System.out.println(juser);
  67. }
  68. }
时间: 2024-10-13 16:56:47

高性能JSON库---FastJson(阿里巴巴)的相关文章

YxdJSON - Delphi 高性能 JSON 库(支持RTTI和序列化操作)

Delphi 高性能 JSON 库(支持RTTI和序列化操作) 支持平台: Windows, Android, iOS, Mac OS https://github.com/yangyxd/YxdJson

75、JSON 解析库---FastJson, Gson

JSON 的简介: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.用于数据转换传输, 通用于PHP,Java,C++,C#,Python等编程语言数据交换传输. 易于人阅读和编写,同时也易于机器解析和生成. 基本结构:对象.数组. Gson 的简介和特点: Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库.可以将一个 JSON 字符串转成一个 Java 对象,或者反过来. 快速.高效 代码量少

高性能JSON框架之FastJson的简单使用

1.前言 1.1.FastJson的介绍: JSON协议使用方便,越来越流行,JSON的处理器有很多,这里我介绍一下FastJson,FastJson是阿里的开源框架,被不少企业使用,是一个极其优秀的Json框架,Github地址: FastJson 1.2.FastJson的特点: 1.FastJson数度快,无论序列化和反序列化,都是当之无愧的fast 2.功能强大(支持普通JDK类包括任意Java Bean Class.Collection.Map.Date或enum) 3.零依赖(没有依

(转)JSON 之FastJson解析

一.阿里巴巴FastJson是一个Json处理工具包,包括“序列化”和“反序列化”两部分,它具备如下特征:速度最快,测试表明,fastjson具有极快的性能,超越任其他的Java Json parser.包括自称最快的JackJson:功能强大,完全支持Java Bean.集合.Map.日期.Enum,支持范型,支持自省:无依赖,能够直接运行在Java SE 5.0以上版本:支持Android:开源 (Apache 2.0) Fastjson API入口类是com.alibaba.fastjso

JSON之FastJson

FastJson是什么? 从网上查到--- 官网地址:http://code.alibabatech.com/wiki/display/FastJSON/Overview(已关闭) FastJSOn是阿里巴巴开源的JSON处理工具,包括“序列化”和“反序列化”两部分,它具备如下特征: 速度最快,测试表明,fastjson具有极快的性能,超越任其他的java json parser.包括自称最快的jackson. 功能强大,完全支持java bean.集合.Map.日期.Enum,支持范型,支持自

JSON库之性能比较:JSON.simple VS GSON VS Jackson VS JSONP

http://www.open-open.com/lib/view/open1434377191317.html 近日做一些性能优化工作,在挑选JSON类库时,发现除了一般常用的JSON-lib外,还有一款号称性能最快的JSON处理器Jackson,于是用上了刚学会的JMeter,对这两个类库进行了简单的性能对比. Java中哪个JSON库的解析速度是最快的? JSON已经成为当前服务器与WEB应用之间数据传输的公认标准,不过正如许多我们所习以为常的事情一样,你会觉得这是理所当然的便不再深入思考

Json学习总结(2)——Java 下的 JSON库性能比较:JSON.simple vs. GSON vs. Jackson vs. JSONP

JSON已经成为当前服务器与WEB应用之间数据传输的公认标准,不过正如许多我们所习以为常的事情一样,你会觉得这是理所当然的便不再深入思考了.我们很少会去想用到的这些JSON库到底有什么不同,但事实上它们的确是不太一样的.因此,我们运行了一个基准测试来对常用的几个JSON库进行了测试,看看在解析不同大小的文件时哪个库的速度是最快的.下面我会把结果分享给大家. JSON通常用于传输及解析大文件.这对运行在Hadoop或者是Spark集群上的数据处理程序而言是个很常见的场景.在给定的文件大小下,你可以

golang高性能日志库zap配置示例

zap是uber开源的Go高性能日志库,gitlab地址 安装 go get -u go.uber.org/zap 请注意,zap仅支持两个最新的Go版本. 示例 简单示例 格式化输出 package main import ( "go.uber.org/zap" "time" ) func main() { // zap.NewDevelopment 格式化输出 logger, _ := zap.NewDevelopment() defer logger.Sync

【转】Unity上同时兼容Android和IOS的JSON库

转自卡神博客Unity上同时兼容Android和IOS的JSON库 虽然说JSON解析很常见,而且也经常看见大家讨论怎么解析.但是还是很多人经常出现各种问题.这篇文章就一次性帮你解决JSON解析的问题. 本篇文章使用JSON解析在真实项目中使用,同时兼容PC.android和IOS.没啥好说,一个C#写的解析JSON的工具类,在unity中能正常解析. 不太好用的JSON解析库:LitJson在IOS上不稳定,有时正常,有时不正常..MiniJson据说支持不完整,没测试. 本文给出的JSON解