阿里巴巴FastJson是一个Json处理工具包,包括“序列化”和“反序列化”两部分,它具备如下特征:
速度最快,测试表明,fastjson具有极快的性能,超越任其他的Java Json parser。包括自称最快的JackJson;
功能强大,完全支持Java Bean、集合、Map、日期、Enum,支持范型,支持自省;无依赖,能够直接运行在Java SE 5.0以上版本;支持Android;开源 (Apache 2.0)源码地址:https://github.com/alibaba/fastjson
Fastjson API入口类是com.alibaba.fastjson.JSON,常用的序列化操作都可以在JSON类上的静态方法直接完成。public static final Object parse(String text); // 把JSON文本parse为JSONObject或者JSONArray
public static final JSONObject parseObject(String text); // 把JSON文本parse成JSONObject
public static final  T parseObject(String text, Class clazz); // 把JSON文本parse为JavaBean
public static final JSONArray parseArray(String text); // 把JSON文本parse成JSONArray
public static final  List parseArray(String text, Class clazz); //把JSON文本parse成JavaBean集合
public static final String toJSONString(Object object); // 将JavaBean序列化为JSON文本
public static final String toJSONString(Object object, boolean prettyFormat); // 将JavaBean序列化为带格式的JSON文本
public static final Object toJSON(Object javaObject); 将JavaBean转换为JSONObject或者JSONArray。

package com.alibaba.fastjson0106;import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;import java.util.ArrayList;
import java.util.List;/*** @Author: hoobey* @Description:* @Date: Created in 15:07 2018/1/6* @Modified By:*/
public class TestFastJson {public static void main(String[] args) {TestPerson json = new TestPerson(19, "李明");List<TestPerson> list = new ArrayList<TestPerson>();list.add(json);list.add(new TestPerson(12, "张三"));//将集合或者对象序例化成JSON//   System.out.println(JSON.toJSON(json));//{"name":"李明","age":19}//    System.out.println( JSON.toJSON(list) );//[{"name":"李明","age":19},{"name":"张三","age":12}]//Json串反序列化成对象TestPerson person = JSON.parseObject("{\"name\":\"李明\",\"age\":19}", TestPerson.class);//    System.out.printf("name:%s,age:%d\n",person.getName(),person.getAge());//name:李明,age:19
String str = "[{\"name\":\"李明\",\"age\":19},{\"name\":\"张三\",\"age\":12}]";//数组对象反序列化成集合List<TestPerson> listPerson = JSON.parseArray(str, TestPerson.class);for (TestPerson item : listPerson) {//         System.out.println( item.getName() );//李明 张三//          System.out.println( item.getAge());  //19    12
        }//没有对象直接解析JSON对象JSONObject jobj = JSON.parseObject("{\"name\":\"李明\",\"age\":19}");//  System.out.printf("name:%s,age:%d\n",jobj.getString("name"),jobj.getBigInteger("age"));//name:李明,age:19//没有对象直接解析JSON数组JSONArray jarr = JSON.parseArray("[{'name':'李明','age':18},{'name':'小四','age':21}]");//和下面使用  转义字符  效果是一致的/*   JSONArray jarr = JSON.parseArray("[{\"name\":\"李明\",\"age\":19},{\"name\":\"张三\",\"age\":12}]");*/System.out.println(jarr);//[{"name":"李明","age":18},{"name":"小四","age":21}]for (int i = 0, len = jarr.size(); i < len; i++) {JSONObject temp = jarr.getJSONObject(i);System.out.println(temp.getString("name")+","+temp.getBigInteger("age"));/* System.out.printf("name:%s,age:%d\n", temp.getString("name"), temp.getBigInteger("age"));*///name:李明,age:19    name:张三,age:12
        }/*{"name":"李明","age":19}
{"name":"张三","age":12}*/for (Object obj : jarr) {System.out.println(obj.toString());}}}

转载于:https://www.cnblogs.com/hoobey/p/8214374.html

阿里的Json解析包FastJson使用相关推荐

  1. Java的Json解析包FastJson使用

    阿里巴巴FastJson是一个Json处理工具包,包括"序列化"和"反序列化"两部分,它具备如下特征: 速度最快,测试表明,fastjson具有极快的性能,超越 ...

  2. Android 中的Json解析工具fastjson 、序列化、反序列化

    Android中通常需要访问服务器,然而服务器返回的数据很多时候都是Json格式 1.fastjson简介 阿里巴巴FastJson是一个Json处理工具包,包括"序列化"和&qu ...

  3. golang 超好用 json 解析包

    介绍 当遇到接收的json的结构不明确的时候,每次想获取json里面的字段,都要不断断言字段的类型,使用起来特别不方便. 这里推荐一个第三方包 https://github.com/tidwall/g ...

  4. golang中json解析包

    package main import "github.com/tidwall/gjson" func main() { jsonstr1 := `{"richtext& ...

  5. JSON解析(java)

    JSON JSON概述 简介: JSON: JavaScript Object Notation JS对象简谱 , 是一种轻量级的数据交换格式. JSON的格式 类名: 诗 属性:诗名 .诗句 jav ...

  6. 关于浮点数的json解析

    近期在工作中遇到个问题 通过post请求从其他系统(好像是C#写的)获得json字符串 {"geometry":{"rings":[[[40426489.331 ...

  7. JSON解析合集:你再也不用怕JSON解析了!!!

    吃得了山珍海味,也啃得了白菜之清苦的人,才是真正的强者. 有目录,不迷路 前言 基础篇 实战篇 造轮子篇 异常解决篇 前言 今天是1024程序员节,特此推出一个JSON解析合集送给大家,希望大家喜欢的 ...

  8. json解析_json解析

    1.生成json字符串 public static String createJsonString(String key, Object value) {JSONObject jsonObject = ...

  9. JSON解析:JSON对象还能这样???

    自信平生无愧事,死后方敢对青天. 有目录,不迷路 前言 缘由 转换 蹊径 前言 愉快的(3+7=8的)中秋国庆假期已经接近尾声,特此写篇博客聊以记录学习过程尽早进入学习状态,也便不陷入假期综合征,使得 ...

最新文章

  1. 传说中的数据结构_JAVA
  2. go 的des加解密
  3. Ie6下asp.net 中treeview自动随鼠标变小的修复
  4. 重写equals方法---java
  5. vsftpd的虚拟账户配置
  6. SVD 与 PCA 的直观解释(2): 特征值与特征向量
  7. vector常见用法
  8. 服务器解析请求的基本原理
  9. python中字典dictionary详解及基本使用
  10. mybatis源码分析(1)-----sqlSessionFactory创建
  11. JSON.Stringify
  12. ES学习笔记八-聚合搜索
  13. Unity3dC#分布式游戏服务器ET框架介绍-组件式设计(转)
  14. 临床试验中lm是什么职位_除了CRX职位,临床试验中还有这些岗位
  15. Java调用Bartender控制条码打印机
  16. 安卓Android系统超级终端(终端模拟…
  17. Windows SubSystem for Linux(WSL)设置默认和设置默认登陆用户
  18. Swift 编程语言首席架构师 Chris Lattner 简介
  19. 汽车 Flexry总线-笔记
  20. 为什么说2020年会是科技并购好时机?

热门文章

  1. 一年级abb式词语并造句_一年级语文ABB式词语专项练习附答案,考考孩子!
  2. 计算机主机制作过程,计算机主机箱的制作方法
  3. mongodb 批量插入_MongoDB批量插入– MongoDB插入很多
  4. Android DialogFragment
  5. c++ 基数排序算法_基数排序算法– C / C ++实现的基础
  6. Android CoordinatorLayout
  7. scala 类中的对象是类_Scala类和对象– Singleton对象,伴侣类
  8. kotlin set 私有_Kotlin可见性修改器–公共,受保护,内部,私有
  9. Android ButterKnife示例
  10. Qt程序移植到其他电脑上无法运行的解决方法