高性能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处理工具包。包含“序列化”和“反序列化”两部分,它具备例如以下特征:
- 速度最快,測试表明。fastjson具有极快的性能,超越任其它的java json parser。包含自称最快的jackson。
- 功能强大,全然支持java bean、集合、Map、日期、Enum。支持范型,支持自省。
- 无依赖,可以直接执行在Java SE 5.0以上版本号
- 支持Android。
- 开源 (Apache 2.0)
2.简单使用
具体使用的话,大家能够去官网看,介绍非常具体,并且是中文。
使用Maven的话。配置pom.xml文件,在dependencies中加入依赖:
- <dependency>
- <groupId>com.alibaba</groupId>
- <artifactId>fastjson</artifactId>
- <version>1.1.36</version>
- </dependency>
以下是简单的測试。參考官网上的数据
- package org.ygy.fastjson;
- import org.junit.Test;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONObject;
- import com.alibaba.fastjson.serializer.SerializerFeature;
- public class JSONTest{
- /**
- *
- * @author yuguiyang
- * @description 序列化
- * @time 2013-9-12
- * @version 1.0
- */
- @Test
- public void test2JsonString() {
- User user = new User(100 , "lufei" , "shishi");
- String json = JSON.toJSONString(user);
- System.out.println(json);
- }
- /**
- *
- * @author yuguiyang
- * @description 反序列化为JSONObject对象
- * @time 2013-9-12
- * @version 1.0
- */
- @Test
- public void testParseObject() {
- String json = JSON.toJSONString(new User(1002 , "suolong" , "shishi"));
- JSONObject obj = JSON.parseObject(json);
- System.out.println(obj);
- System.out.println(obj.get("id"));
- System.out.println(obj.getString("name"));
- }
- /**
- *
- * @author yuguiyang
- * @description 反序列化为JavaBean
- * @time 2013-9-12
- * @version 1.0
- */
- @Test
- public void testParseBean() {
- String json = JSON.toJSONString(new User(1002 , "suolong" , "shishi"));
- User user = JSON.parseObject(json , User.class);
- System.out.println(user.getId() + " , " + user.getName() + " , " + user.getPassword());
- }
- /**
- *
- * @author yuguiyang
- * @description 将JavaBean对象转换为JSON对象
- * @time 2013-9-12
- * @version 1.0
- */
- @Test
- public void test2Json() {
- User user = new User(222 , "qiaoba" , "haha");
- JSONObject obj = (JSONObject) JSON.toJSON(user);
- System.out.println(obj.get("id") + "," + obj.get("name"));
- }
- @Test
- public void testSeria() {
- User user = new User(222 , "qiaoba" , "haha");
- String json = JSON.toJSONString(user , SerializerFeature.WriteClassName);
- User juser = (User) JSON.parse(json);
- System.out.println(juser);
- }
- }
高性能JSON库---FastJson(阿里巴巴)的更多相关文章
- YxdJSON - Delphi 高性能 JSON 库(支持RTTI和序列化操作)
源:YxdJSON - Delphi 高性能 JSON 库(支持RTTI和序列化操作) Delphi 高性能 JSON 库(支持RTTI和序列化操作) 支持平台: Windows, Android, ...
- 高性能JSON工具-FastJson处理超大JSON文本
使用阿里开源类库FastJson,当需要处理超大JSON文本时,需要Stream API,在fastjson-1.1.32版本中开始提供Stream API.文档参考GitHub:https://gi ...
- Fastjson是一个Java语言编写的高性能功能完善的JSON库。
简介 Fastjson是一个Java语言编写的高性能功能完善的JSON库. 高性能 fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jackson. ...
- 深入 Go 中各个高性能 JSON 解析库
转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com/archives/535 其实本来我是没打算去看 JSON 库的性能问题的,但是最近我对 ...
- 高性能JSON框架之FastJson的简单使用
1.前言 1.1.FastJson的介绍: JSON协议使用方便,越来越流行,JSON的处理器有很多,这里我介绍一下FastJson,FastJson是阿里的开源框架,被不少企业使用,是一个极其优秀的 ...
- Java几种常用JSON库性能比较
本篇通过JMH来测试一下Java中几种常见的JSON解析库的性能. 每次都在网上看到别人说什么某某库性能是如何如何的好,碾压其他的库.但是百闻不如一见,只有自己亲手测试过的才是最值得相信的. JSON ...
- JSON库的使用研究(一)
最近用到JSON,收集了一些资料,整理如下: 选择一个合适的JSON库要从多个方面进行考虑: 字符串解析成JSON性能 字符串解析成Java Object性能 Java Object转JSON性能 集 ...
- Java常用的几个Json库,性能强势对比!
作者:飞污熊 https://xncoding.com/2018/01/09/java/jsons.html 本篇通过JMH来测试一下Java中几种常见的JSON解析库的性能.每次都在网上看到别人说什 ...
- JSON和fastjson
一.JSON 语法规则: 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 名称/值对-->对象-->数组 JSON 名称/值对 JSON 数据的书写格式是:名称/值对. ...
随机推荐
- Bower —— 一个Web的包管理工具
作者:江剑锋 github地址:https://github.com/bower/bower Bower为何物 Bower是一个Web开发的包管理软件.前端开发中,或多或少,都会以来于现成的fra ...
- poj 2274 The Race 最小堆
题目链接 题目大意: 给n个小车, 每个小车有一个初始位置x和初始速度v, 保证x1 < x2..... <xn. 0<v<100. 然后问你一共会发生多少次超车, 以及前10 ...
- Top free and open source log management software
As mentioned in the previous post, in my quest to find an alternative to Kiwi Syslog, I looked at a ...
- OpenGL中glRotatef()函数究竟对矩阵做了什么
OpenGL中glRotatef()函数究竟对矩阵做了什么 我们知道OpenGL中维持着两套矩阵,一个是模型视图矩阵(model view matrix),另一个是投影矩阵(projection ma ...
- 什么时候css会见less
在一定程度上,css不能被视为一个节目.虽然和其他语言,它有自己的规范.编码,但它的笨拙实在让我失望. 不喜欢css是由于不管怎么优化代码.项目大到一定程序后.都会看上去一团乱.并且有时候一个bug的 ...
- Android 教你打造炫酷的ViewPagerIndicator 不仅仅是高仿MIUI
1.概述 哈,今天给大家带来一个ViewPagerIndicator的制作,相信大家在做tabIndicator的时候,大多数人都用过 TabPageIndicator,并且很多知名APP都使用过这个 ...
- 智能家居项目(2):项目project框架的搭建
项目管理器: Linux中的项目管理器"make"有些类似于windows中的Visual C++里的"project",它是一种控制编译或者反复编译软件的工具 ...
- SQL Server 中的跨库视图
SQL Server 中的跨库视图 在一个SQL中,有多个数据库,A.B.C,在使用C为连接库中,现在要查询A中的表T1. 那么,在C中建创视图(A_T1). SELECT *FROM A.dbo.T ...
- 深度优先搜索——迷宫问题(华为oj)
题目描述: 定义一个二维数组N*M(其中2<=N<=10;2<=M<=10),如5 × 5数组下所示: int maze[5][5] = { 0, 1, 0, 0, 0, 0, ...
- IO库 8.2
题目:编写一个测试函数,将cin作为参数传入. #include <iostream> using std::istream; istream& func(istream& ...