FastJson使用笔记

    xiaoxiao2022-07-05  139

    抽空看了一下FastJson的知识,这里自己做下笔记 1、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 parseObject(String text, Class clazz); // 把JSON文本parse为JavaBean public static final JSONArray parseArray(String text); // 把JSON文本parse成JSONArray public static final List parseArray(String text, Class 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。

    2、有关类库的一些说明 SerializeWriter:相当于StringBuffer JSONArray:相当于List JSONObject:相当于Map<String, Object> JSON反序列化没有真正数组,本质类型都是List

    3、简单的使用例子 1)转Json字符串

    public static String toJson(Object obj) { if (ToolUtil.isEmpty(obj)) { return null; } //SerializerFeature.DisableCircularReferenceDetect的作用 是关闭fastJson循环引用 return JSON.toJSONString(obj, SerializerFeature.DisableCircularReferenceDetect); }

    默认情况下Date 类型的数据 转成字符串是 时间戳的形式,所以如果是javaBean中存在Date类型的字段, 在字段属性加上 @JSONField(format = “yyyy-MM-dd HH:mm:ss”)进行格式指定

    2)Json字符串转JavaBean

    public static <T> T jsonStrToBean(String jsonStr, Class<T> clazz) { if (ToolUtil.isEmpty(jsonStr)) { return null; } return JSON.parseObject(jsonStr, clazz); }

    3)Json字符串转 Map

    public static Map<String,Object> jsonStrToMap(String jsonStr){ if(ToolUtil.isEmpty(jsonStr)){ return null; } return JSON.parseObject(jsonStr,new TypeReference<Map<String,Object>>(){}); }

    4) Json字符转List

    public static <T> List<T> jsonStrToList(String jsonStr, Class<T> clazz) { if (ToolUtil.isEmpty(jsonStr)) { return null; } return JSON.parseArray(jsonStr, clazz); }

    4、maven依赖

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

    参考地址:https://www.w3cschool.cn/fastjson/fastjson-ex2.html

    最新回复(0)