首先,JSON究竟是什么?
JSON就是一串字符串 仅仅只是元素会使用特定的符号标注。
{} 双括号表示对象
[] 中括号表示数组
"" 双引號内是属性或值
: 冒号表示后者是前者的值(这个值能够是字符串、数字、也能够是还有一个数组或对象)
所以 {"name": "Michael"} 能够理解为是一个包括name为Michael的对象
而[{"name": "Michael"},{"name": "Jerry"}]就表示包括两个对象的数组
当然了,你也能够使用{"name":["Michael","Jerry"]}来简化上面一部,这是一个拥有一个name数组的对象
注:{"abc"}不是JSON格式,JSON格式是键值对形式的。
言归正传:fastjson的经常用法例如以下:
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。
一个实践:序列化与反序列化