JSON 之FastJson解析

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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.fastjson.JSON,常用的序列化操作都可以在JSON类上的静态方法直接完成。
1 public static final Object parse(String text); // 把JSON文本parse为JSONObject或者JSONArray 
2 public static final JSONObject parseObject(String text); // 把JSON文本parse成JSONObject    
3 public static final  T parseObject(String text, Class clazz); // 把JSON文本parse为JavaBean 
4 public static final JSONArray parseArray(String text); // 把JSON文本parse成JSONArray 
5 public static final  List parseArray(String text, Class clazz); //把JSON文本parse成JavaBean集合 
6 public static final String toJSONString(Object object); // 将JavaBean序列化为JSON文本 
7 public static final String toJSONString(Object object, boolean prettyFormat); // 将JavaBean序列化为带格式的JSON文本 
8 public static final Object toJSON(Object javaObject); //将JavaBean转换为JSONObject或者JSONArray。

二、FastJson解析JSON步骤

A、服务器端将数据转换成json字符串

public static String createJsonString(Object value)
    {
        String alibabaJson = JSON.toJSONString(value);
        return alibabaJson;
    }

B、客户端将json字符串转换为相应的javaBean

 public static T getPerson(String jsonString, Class cls) {
        T t = null;
        try {
            t = JSON.parseObject(jsonString, cls);
        } catch (Exception e) {
            // TODO: handle exception
        }
        return t;
    }
public static List getPersons(String jsonString, Class cls) {
        List list = new ArrayList();
        try {
            list = JSON.parseArray(jsonString, cls);
        } catch (Exception e) {
        }
        return list;
    }
public static List> listKeyMaps(String jsonString) {
        List> list = new ArrayList>();
        try {
            list = JSON.parseObject(jsonString,
                    new TypeReference>>() {
            });
        } catch (Exception e) {
            // TODO: handle exception
        }
        return list;
    }

 jar包下载 :  http://mvnrepository.com/artifact/com.alibaba/fastjson 

http://mvnrepository.com/artifact/com.alibaba/fastjson/1.2.7

<dependency> 
  <groupId>com.alibaba</groupId>  
  <artifactId>fastjson</artifactId>  
  <version>1.2.7</version> 
</dependency>

 

 

以上是关于JSON 之FastJson解析的主要内容,如果未能解决你的问题,请参考以下文章

JSON 之FastJson解析

JSON 之FastJson解析

JSON数据之使用Fastjson进行解析

安卓数据解析之 fastjson 的解析以及Gson解析

JSON初体验:FastJson解析

复杂json怎么使用fastjson一次性提取出来