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。