FastJson 中枚举详解

FastJson 中枚举详解

PropertyNamingStrategy 枚举(属性命名策略)

@since 1.2.15java

Java 对象属性:personIdjson

类型 实例 含义 备注
CamelCase persionId 默认
PascalCase PersonId
SnakeCase person_id
KebabCase person-id

修改全局缺省的命名策略数组

SerializeConfig.getGlobalInstance().propertyNamingStrategy = PropertyNamingStrategy.CamelCase;

Feature 枚举(特征)

类型 起始版本 含义 备注
AutoCloseSource 容许自动关闭流(默认:true)
AllowComment 容许注释(默认:false)
AllowUnQuotedFieldNames 容许使用非双引号属性名称
AllowSingleQuotes 容许单引号来包住属性名称和字符串值
InternFieldNames
AllowISO8601DateFormat 容许使用 ISO8610 进行日期格式化
AllowArbitraryCommas 容许多重逗号
UseBigDecimal 使用 BigDecimal 类来装载数字,不然用的是 Double(默认:false)
IgnoreNotMatch 1.1.2 忽略不匹配
SortFeidFastMatch 1.1.3 排序字段优先匹配
DisableASM 1.1.3 禁用ASM
DisableCircularReferenceDetect 1.1.7 禁用循环引用检测
InitStringFieldAsEmpty 1.1.10 无值字符串设置为空串
SupportArrayToBean 1.1.35 支持数组转对象
OrderedField 1.2.3 排序字段
DisableSpecialKeyDetect 1.2.5 禁用特殊字符检测
UseObjectArray 1.2.9 使用对象数组
SupportNonPublicField 1.2.22 支持非公有字段
IgnoreAutoType 1.2.29 忽略自动类型
DisableFieldSmartMatch 1.2.30 禁用字段智能匹配

SerializerFeature 枚举(序列化)

类型 起始版本 含义 备注
QuoteFieldNames 输出数据时使用双引号,默认为 true
UseSingleQuotes 输出数据时使用单引号,默认为 false
WriteMapNullValue 输出值为 null 的字段,默认为 false
WriteEnumUsingToString enum 输出 name() 或者 original,默认为 false
WriteEnumUsingName enum 输出 name()
UseISO8601DateFormat date 使用 ISO8601 格式输出,默认为 false
WriteNullListAsEmpty 1.1 list 字段若是为 null,输出为 [],而非 null
WriteNullStringAsEmpty 1.1 字符类型字段若是为null,输出为 ”“,而非 null
WriteNullNumberAsZero 1.1 数值字段若是为 null,输出为 0,而非 null
WriteNullBooleanAsFalse 1.1 boolean 字段若是为 null,输出为 false,而非 null
SkipTransientField 1.1 若是是 true,类中的 getXXX 方法对应的 Field 是 transient,序列化时将会被忽略。默认为 true
SortField 1.1 按字段名称排序后输出,默认为 false
WriteTabAsSpecial 1.1.1 \t 作转义输出,默认为 false (不推荐)
PrettyFormat 1.1.2 结果是否格式化,默认为 false
WriteClassName 1.1.2 序列化时写入类型信息,默认为 false。反序列化是需用到
DisableCircularReferenceDetect 1.1.6 消除对同一对象循环引用的问题,默认为 false
WriteSlashAsSpecial 1.1.9 对斜杠 ‘/’ 进行转义
BrowserCompatible 1.1.10 将中文都会序列化为 \uxxxx 格式,字节数会多一些,可是能兼容IE 6,默认为false
WriteDateUseDateFormat 1.1.14 全局修改日期格式,默认为 false JSON.DEFFAULT_DATE_FORMAT = “yyyy-MM-dd”;JSON.toJSONString(obj, SerializerFeature.WriteDateUseDateFormat);
NotWriteRootClassName 1.1.15 不输出根类名称
DisableCheckSpecialChar 1.1.19 一个对象的字符串属性中若是有特殊字符如双引号,将会在转成json时带有反斜杠转移符。若是不须要转义,可使用这个属性,默认为 false
BeanToArray 1.1.35 将对象转为数组
WriteNonStringKeyAsString 1.1.37 非字符串键输出为字符串
NotWriteDefaultValue 1.1.42 不设置默认值
BrowserSecure 1.2.6 浏览器安全
IgnoreNonFieldGetter 1.2.7 忽略没有 getXXX 方法的字段
WriteNonStringValueAsString 1.2.9 非字符串值输出为字符串
IgnoreErrorGetter 1.2.11 忽略错误的 getXXX 方法的字段
WriteBigDecimalAsPlain 1.2.16
MapSortField 1.2.27 容许 map 类型排序字段
相关文章
相关标签/搜索