public class JSONConfig extends Object implements Serializable
Modifier and Type | Class and Description |
---|---|
static class |
JSONConfig.DuplicateMode
重复key或重复对象处理方式
只针对 JSONObject ,检查在put时key的重复情况 |
Constructor and Description |
---|
JSONConfig() |
Modifier and Type | Method and Description |
---|---|
String |
getDateFormat()
日期格式,null表示默认的时间戳
|
JSONConfig.DuplicateMode |
getDuplicateMode()
获取key重复策略
|
Comparator<String> |
getKeyComparator()
获取键排序规则
键排序规则, null 表示不排序,不排序情况下,按照加入顺序排序 |
NumberWriteMode |
getNumberWriteMode()
获取Number写出模式
|
boolean |
isIgnoreCase()
是否忽略键的大小写
|
boolean |
isIgnoreError()
是否忽略转换过程中的异常
|
boolean |
isIgnoreNullValue()
是否忽略null值
|
boolean |
isIgnoreZeroWithChar()
是否忽略零宽字符,这些字符可能会导致解析安全问题,这些字符包括:
零宽空格:
零宽非换行空:
零宽连接符:
零宽无断空格:
|
boolean |
isStripTrailingZeros()
是否去除末尾多余0,例如如果为true,5.0返回5
|
boolean |
isTransientSupport()
是否支持transient关键字修饰和@Transient注解,如果支持,被修饰的字段或方法对应的字段将被忽略。
|
static JSONConfig |
of()
创建默认的配置项
|
JSONConfig |
set(JSONConfig.DuplicateMode duplicateMode)
设置key重复策略
|
JSONConfig |
setDateFormat(String dateFormat)
设置日期格式,null表示默认的时间戳
此方法设置的日期格式仅对转换为JSON字符串有效,对解析JSON为bean无效。 |
JSONConfig |
setIgnoreCase(boolean ignoreCase)
设置是否忽略键的大小写
|
JSONConfig |
setIgnoreError(boolean ignoreError)
设置是否忽略转换过程中的异常
|
JSONConfig |
setIgnoreNullValue(boolean ignoreNullValue)
设置是否忽略null值
此选项主要作用于两个阶段: Java对象或JSON字符串转为JSON时 JSON写出或转为JSON字符串时 |
JSONConfig |
setIgnoreZeroWithChar(boolean ignoreZeroWithChar)
设置是否忽略零宽字符,这些字符可能会导致解析安全问题,这些字符包括:
零宽空格:
零宽非换行空:
零宽连接符:
零宽无断空格:
|
JSONConfig |
setKeyComparator(Comparator<String> keyComparator)
设置键排序规则
键排序规则, null 表示不排序,不排序情况下,按照加入顺序排序 |
JSONConfig |
setNatureKeyComparator()
设置自然排序,即按照字母顺序排序
|
JSONConfig |
setNumberWriteMode(NumberWriteMode numberWriteMode)
设置数字写出模式
考虑到在JS或其他环境中,Number超过一定长度会丢失精度,因此针对Number类型值,可选写出规则 |
JSONConfig |
setStripTrailingZeros(boolean stripTrailingZeros)
设置是否去除末尾多余0,例如如果为true,5.0返回5
|
JSONConfig |
setTransientSupport(boolean transientSupport)
设置是否支持transient关键字修饰和@Transient注解,如果支持,被修饰的字段或方法对应的字段将被忽略。
|
public static JSONConfig of()
public Comparator<String> getKeyComparator()
null
表示不排序,不排序情况下,按照加入顺序排序public JSONConfig setNatureKeyComparator()
public JSONConfig setKeyComparator(Comparator<String> keyComparator)
null
表示不排序,不排序情况下,按照加入顺序排序keyComparator
- 键排序规则public boolean isIgnoreError()
public JSONConfig setIgnoreError(boolean ignoreError)
ignoreError
- 是否忽略转换过程中的异常public boolean isIgnoreCase()
public JSONConfig setIgnoreCase(boolean ignoreCase)
ignoreCase
- 是否忽略键的大小写public String getDateFormat()
public JSONConfig setDateFormat(String dateFormat)
dateFormat
- 日期格式,null表示默认的时间戳public boolean isIgnoreNullValue()
public JSONConfig setIgnoreNullValue(boolean ignoreNullValue)
ignoreNullValue
- 是否忽略null值public boolean isTransientSupport()
public JSONConfig setTransientSupport(boolean transientSupport)
transientSupport
- 是否支持public boolean isStripTrailingZeros()
public JSONConfig setStripTrailingZeros(boolean stripTrailingZeros)
stripTrailingZeros
- 是否去除末尾多余0,例如如果为true,5.0返回5public JSONConfig.DuplicateMode getDuplicateMode()
public JSONConfig set(JSONConfig.DuplicateMode duplicateMode)
duplicateMode
- key重复策略public NumberWriteMode getNumberWriteMode()
public JSONConfig setNumberWriteMode(NumberWriteMode numberWriteMode)
numberWriteMode
- Number写出模式public boolean isIgnoreZeroWithChar()
false
,则转义,否则去除public JSONConfig setIgnoreZeroWithChar(boolean ignoreZeroWithChar)
ignoreZeroWithChar
- 此值为false
,则转义,否则去除Copyright © 2025. All rights reserved.