//下面,将一一讲解JsonFormat中的配置项. 各种配置均可链式设置,以达到叠加效果.
indentBy //缩进所使用的字符,默认是3个空格
Json.toJson(pet, JsonFormat.full().setIndentBy("\t"));// 输出的缩进将使用tab
compact // 是否为紧凑模式,默认为false. 若为true,indent和indentBy将无效.
Json.toJson(pet, JsonFormat.full().setCompact(true)); // 不作任何换行和缩进
quoteName //key是否用双引号包起来,默认为true,同时也是json标准格式的要求. 若设置为false,则新版的jquery将解析出错.
Json.toJson(pet, JsonFormat.full().setQuoteName(false)); // 输出类似 {name:"wendal"}
ignoreNull // 控制是否忽略null值,默认为false
Json.toJson(pet, JsonFormat.full().setIgnoreNull(true)); // null值的key-value将不会输出,但空List还是会的.
actived //仅输出哪些的key,默认为null,即允许所有key. 注意,这是正则表达式!
Json.toJson(pet, JsonFormat.full().setActived("^(name|id|location)$"); // 仅输出name/id/location,其他key都不输出
locked //与actived刚好相反, 不输出哪些的key,默认为null,即允许所有key. 注意,这是正则表达式!
Json.toJson(pet, JsonFormat.full().setLocked("^(location)$"); // 不输出location,其他key正常输出
separator //分隔符,不可配置,路过吧
autoUnicode // 自动转换为unicode,默认为false. 特殊需要,一般用不上
Json.toJson(pet, JsonFormat.full().setAutoUnicode(true); // 当非英文字符出现时,转为uf003 形式
unicodeLower //Unicode编码是大写还是小写,默认大写
dateFormat //日期格式
Json.toJson(pet, JsonFormat.full().setDateFormat("yyyyMMdd"); // 将输出类似于 {"b":"20190823"}
castors // 高级货,基本上不会用到.
indent //临时变量.