fastJson的配置使用

package me.jar.practise.json;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializeConfig;
import com.alibaba.fastjson.serializer.SerializerFeature;

public final class JsonUtils {

    private static final SerializeConfig config;
    static {
        // 设置日期转字符串的格式
        JSON.DEFFAULT_DATE_FORMAT = "yyyy-MM-dd HH:mm:ss";
        // 设置输出transient修饰的属性
        JSON.DEFAULT_GENERATE_FEATURE = SerializerFeature.config(JSON.DEFAULT_GENERATE_FEATURE,
                SerializerFeature.SkipTransientField, false);
        config = new SerializeConfig();
        // 设置禁止ASM序列化,配合WriteMapNullValue,null值的属性也打印出来
        config.setAsmEnable(false);
    }

    private JsonUtils() {
        // 工具类,添加私有构造器,防止实例化
    }

    /**
     * 将对象转成JSON格式的字符串返回
     *
     * @param obj 对象
     * @return 字符串
     */
    public static String ObjectToJsonString(Object obj) {
        if (obj == null) {
            return "{}";
        }
        return JSON.toJSONString(obj, config, SerializerFeature.WriteMapNullValue,
                SerializerFeature.WriteNullListAsEmpty, SerializerFeature.WriteDateUseDateFormat,
                SerializerFeature.DisableCircularReferenceDetect);
    }
}

 

fastJson的配置使用

上一篇:ResultAPI:告别onActivityResult,拥抱ActivityResultContract


下一篇:按键精灵手机版多点找色,图片对比 by <剑行洪荒> 忠哥