public interface JSON extends Serializable
JSONObject
表示键值对形式的节点JSONArray
表示列表形式的节点JSONPrimitive
表示数字、Boolean、字符串形式的节点null
表示空节点Modifier and Type | Method and Description |
---|---|
default JSONArray |
asJSONArray()
转为JSONArray
|
default JSONObject |
asJSONObject()
转为JSONObject
|
default JSONPrimitive |
asJSONPrimitive()
转为JSONPrimitive
|
default JSONConfig |
config()
获取JSON配置
|
default JSON |
getByPath(String expression)
通过表达式获取JSON中嵌套的JSON对象
.表达式,可以获取Bean对象中的属性(字段)值或者Map中key对应的值 []表达式,可以获取集合等对象中对应index的值 表达式栗子: persion persion.name persons[3] person.friends[5].name |
default <T> T |
getByPath(String expression,
Type resultType)
通过表达式获取JSON中嵌套的对象
.表达式,可以获取Bean对象中的属性(字段)值或者Map中key对应的值 []表达式,可以获取集合等对象中对应index的值 表达式栗子: persion persion.name persons[3] person.friends[5].name 获取表达式对应值后转换为对应类型的值 |
JSONFactory |
getFactory()
获取JSON工厂
|
default <T> T |
getObjByPath(String expression)
通过表达式获取JSON中嵌套的对象
.表达式,可以获取Bean对象中的属性(字段)值或者Map中key对应的值 []表达式,可以获取集合等对象中对应index的值 表达式栗子: persion persion.name persons[3] person.friends[5].name 获取表达式对应值后转换为对应类型的值 |
default boolean |
isEmpty()
判断JSON是否为空,即大小为0
|
default void |
putByPath(String expression,
Object value)
设置表达式指定位置(或filed对应)的值
若表达式指向一个JSONArray则设置其坐标对应位置的值,若指向JSONObject则put对应key的值 注意:如果为JSONArray,设置值下标小于其长度,将替换原有值,否则追加新值 .表达式,可以获取Bean对象中的属性(字段)值或者Map中key对应的值 []表达式,可以获取集合等对象中对应index的值 表达式栗子: persion persion.name persons[3] person.friends[5].name |
int |
size()
JSON大小,对于JSONObject,是键值对的多少,JSONArray则是元素的个数,JSON原始数据为1
|
default <T> T |
toBean(Type type)
转为实体类对象
|
default String |
toJSONString(int indentFactor)
格式化输出JSON字符串
|
default String |
toJSONString(int indentFactor,
Predicate<MutableEntry<Object,Object>> predicate)
格式化输出JSON字符串
|
default String |
toStringPretty()
格式化打印JSON,缩进为4个空格
|
void |
write(JSONWriter writer)
将JSON内容写入Writer
Warning: This method assumes that the data structure is acyclical. |
JSONFactory getFactory()
int size()
void write(JSONWriter writer) throws JSONException
writer
- writerJSONException
- JSON相关异常default JSONConfig config()
JSONConfig
default boolean isEmpty()
default JSONObject asJSONObject()
default JSONArray asJSONArray()
default JSONPrimitive asJSONPrimitive()
default <T> T getObjByPath(String expression)
表达式栗子:
persion persion.name persons[3] person.friends[5].name
获取表达式对应值后转换为对应类型的值
T
- 返回值类型expression
- 表达式BeanPath.getValue(Object)
default <T> T getByPath(String expression, Type resultType)
表达式栗子:
persion persion.name persons[3] person.friends[5].name
获取表达式对应值后转换为对应类型的值
T
- 返回值类型expression
- 表达式resultType
- 返回值类型BeanPath.getValue(Object)
default JSON getByPath(String expression)
表达式栗子:
persion persion.name persons[3] person.friends[5].name
expression
- 表达式BeanPath.getValue(Object)
default void putByPath(String expression, Object value)
表达式栗子:
persion persion.name persons[3] person.friends[5].name
expression
- 表达式value
- 值default String toStringPretty() throws JSONException
JSONException
- 包含非法数抛出此异常default String toJSONString(int indentFactor) throws JSONException
indentFactor
- 每层缩进空格数JSONException
- 包含非法数抛出此异常default String toJSONString(int indentFactor, Predicate<MutableEntry<Object,Object>> predicate) throws JSONException
indentFactor
- 每层缩进空格数predicate
- 过滤器,用于过滤不需要的键值对JSONException
- 包含非法数抛出此异常Copyright © 2025. All rights reserved.