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解析的主要内容,如果未能解决你的问题,请参考以下文章