FastJson的使用

时间:2022-11-11 17:22:32

FastJson

FastJson:阿里巴巴的一个Json处理工具包,包括序列化和反序列化两部分。

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

1.序列化:将java各种对象转化为json串。

序列化入口:使用JSON.toJSONString()这个静态方法来实现序列化

2.反序列化:将json串转换为对应的java对象

反序列化入口:parse()/parseObject()/parseArray()等将json串转换为java对象的静态方法。3.import com.alibaba.fastjson.JSON;

3.Fastjson的最主要的使用入口是com.alibaba.fastjson.JSON

 import com.alibaba.fastjson.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> T parseObject(String text, Class<T> clazz); // 把JSON文本parse为JavaBean
public static final JSONArray parseArray(String text); // 把JSON文本parse成JSONArray
public static final <T> List<T> parseArray(String text, Class<T> 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。

4.JSONObject与JSONArray和Map

(1)JSONObject

json对象,就是一个键对应一个值,使用的是大括号{ },如:{key:value}

Json对象中添加的是键值对

JSONObject Json = new JSONObject();
Json.put("key", "value");//JSONObject对象中添加键值对

(2)JSONArray

json数组,使用中括号[],只不过数组里面的项也是json键值对格式的

JSONArray中添加的是Json对象

JSONArray JsonArray = new JSONArray();
JsonArray.add(Json);//将JSONObject对象添加到Json数组中

(3)Map

Map和JSONObject都是键值对,不同的是map中键值对中间用逗号分开,json中键值对中间用冒号分开。其实json就是一种特殊形式的map。