zoukankan      html  css  js  c++  java
  • 对象转json字符串,附带SerializerFeature属性说明

    对象转JSON字符串

    /**
     * 将对象转换为json格式的字符串
     * 
     * @param obj
     * @return String
     */
    public static String obj2json(Object obj) {
      String json = "";
        try {
          json = JSONObject.toJSONString(obj, SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullStringAsEmpty, SerializerFeature.DisableCircularReferenceDetect);
        } catch (Exception e) {
          e.printStackTrace();
          return "";
        }
        return json;
    }

    附带SerializerFeature说明

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

    SerializerFeature属性

    名称

    含义

    备注

    QuoteFieldNames

     输出key时是否使用双引号,默认为true

     

    UseSingleQuotes

    使用单引号而不是双引号,默认为false

     

    WriteMapNullValue

    是否输出值为null的字段,默认为false

     

    WriteEnumUsingToString

    Enum输出name()或者original,默认为false

     

    UseISO8601DateFormat

    Date使用ISO8601格式输出,默认为false

     

    WriteNullListAsEmpty

    List字段如果为null,输出为[],而非null

     

    WriteNullStringAsEmpty

    字符类型字段如果为null,输出为”“,而非null

     

    WriteNullNumberAsZero

    数值字段如果为null,输出为0,而非null

     

    WriteNullBooleanAsFalse

    Boolean字段如果为null,输出为false,而非null

     

    SkipTransientField

    如果是true,类中的Get方法对应的Field是transient,序列化时将会被忽略。默认为true

     

    SortField

    按字段名称排序后输出。默认为false

     

    WriteTabAsSpecial

    把 做转义输出,默认为false

    不推荐

    PrettyFormat

    结果是否格式化,默认为false

     

    WriteClassName

    序列化时写入类型信息,默认为false。反序列化是需用到

     

    DisableCircularReferenceDetect

    消除对同一对象循环引用的问题,默认为false

     

    WriteSlashAsSpecial

    对斜杠’/’进行转义

     

    BrowserCompatible

    将中文都会序列化为uXXXX格式,字节数会多一些,但是能兼容IE 6,默认为false

     

    WriteDateUseDateFormat

    全局修改日期格式,默认为false。JSON.DEFFAULT_DATE_FORMAT = “yyyy-MM-dd”;JSON.toJSONString(obj, SerializerFeature.WriteDateUseDateFormat);

     

    DisableCheckSpecialChar

    一个对象的字符串属性中如果有特殊字符如双引号,将会在转成json时带有反斜杠转移符。如果不需要转义,可以使用这个属性。默认为false

     

    NotWriteRootClassName

    含义

     

    BeanToArray

    将对象转为array输出

     

    WriteNonStringKeyAsString

    含义

     

    NotWriteDefaultValue

    含义

     

    BrowserSecure

    含义

     

    IgnoreNonFieldGetter

    含义

     

    WriteEnumUsingName

    含义

     
  • 相关阅读:
    jQuery File Upload 文件上传插件使用一 (最小安装 基本版)
    JS代码优化及技巧
    autocomplete.jquery 点击或进入默认显示所有结果
    JS学习 函数的理解
    JS学习 用 arguments 对象模拟函数重载
    underscore.js 分析 第一天
    PEB(Process Environment Block)
    TEB(Thread Environment Block)
    NTSTATUS.H
    Hydra总结
  • 原文地址:https://www.cnblogs.com/zh-1721342390/p/10772781.html
Copyright © 2011-2022 走看看