序列化API
序列化就是指把 JavaBean 对象转成 JSON 格式的字符串。
package com.alibaba.fastjson;
public abstract class JSON {
// 将Java对象序列化为JSON字符串,支持各种Java基本类型和JavaBean
public static String toJSONString(Object object, SerializerFeature... features);
// 将Java对象序列化为JSON字符串,返回JSON字符串的utf-8 bytes
public static byte[] toJSONBytes(Object object, SerializerFeature... features);
// 将Java对象序列化为JSON字符串,写入到Writer中
public static void writeJSONString(Writer writer,
Object object,
SerializerFeature... features);
// 将Java对象序列化为JSON字符串,按UTF-8编码写入到OutputStream中
public static final int writeJSONString(OutputStream os, //
Object object, //
SerializerFeature... features);
}
反序列化API
反序列化就是把 JSON 格式的字符串转化为 JavaBean 对象。
package com.alibaba.fastjson;
public abstract class JSON {
// 将JSON字符串反序列化为JavaBean
public static <T> T parseObject(String jsonStr,
Class<T> clazz,
Feature... features);
// 将JSON字符串反序列化为JavaBean
public static <T> T parseObject(byte[] jsonBytes, // UTF-8格式的JSON字符串
Class<T> clazz,
Feature... features);
// 将JSON字符串反序列化为泛型类型的JavaBean
public static <T> T parseObject(String text,
TypeReference<T> type,
Feature... features);
// 将JSON字符串反序列为JSONObject
public static JSONObject parseObject(String text);
}
JSONObject,JSONArray 是 JSON 的两个子类。
JSONObject 相当于 Map<String, Object>
,JSONArray 相当于 List<Object>
。
问题
Android开发fastjson错误:JSONException: default constructor not found. class com.xx…
注意,遇到上面的问题时,我们只需在实体类 JavaBean 中添加一个无参的构造方法即可。
参考:
https://www.w3cschool.cn/fastjson/fastjson-api.html
https://blog.csdn.net/flysun3344/article/details/54707965
文章只是作为个人记录学习使用,如有不妥之处请指正,谢谢。