Package com.alibaba.fastjson
Class JSONPath
- java.lang.Object
-
- com.alibaba.fastjson.JSONPath
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classJSONPath.FilterSegment
-
Constructor Summary
Constructors Constructor Description JSONPath(String path)JSONPath(String path, boolean ignoreNullValue)JSONPath(String path, SerializeConfig serializeConfig, ParserConfig parserConfig, boolean ignoreNullValue)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidarrayAdd(Object rootObject, Object... values)static voidarrayAdd(Object rootObject, String path, Object... values)static JSONPathcompile(String path)static JSONPathcompile(String path, boolean ignoreNullValue)booleancontains(Object rootObject)static booleancontains(Object rootObject, String path)booleancontainsValue(Object rootObject, Object value)static booleancontainsValue(Object rootObject, String path, Object value)Objecteval(Object rootObject)<T> Teval(Object rootObject, Type clazz)<T> Teval(Object rootObject, Type clazz, ParserConfig parserConfig)static Objecteval(Object rootObject, String path)static Objecteval(Object rootObject, String path, boolean ignoreNullValue)Objectextract(DefaultJSONParser parser)static Objectextract(String json, String path)static Objectextract(String json, String path, ParserConfig config, int features, Feature... optionFeatures)StringgetPath()booleanisRef()Set<?>keySet(Object rootObject)Extract keySet or field names from rootObject on this JSONPath.static Set<?>keySet(Object rootObject, String path)Compile jsonPath and use it to extract keySet or field names from rootObject.voidpatchAdd(Object rootObject, Object value, boolean replace)static Map<String,Object>paths(Object javaObject)static Map<String,Object>paths(Object javaObject, SerializeConfig config)static Objectread(String json, String path)static <T> Tread(String json, String path, Type clazz)static <T> Tread(String json, String path, Type clazz, ParserConfig parserConfig)booleanremove(Object rootObject)static booleanremove(Object root, String path)booleanremoveArrayItem(JSONPath path, Object currentObject, int index)static ObjectreserveToArray(Object object, String... paths)static ObjectreserveToObject(Object object, String... paths)booleanset(Object rootObject, Object value)booleanset(Object rootObject, Object value, boolean p)static booleanset(Object rootObject, String path, Object value)booleansetArrayItem(JSONPath path, Object currentObject, int index, Object value)intsize(Object rootObject)static intsize(Object rootObject, String path)StringtoJSONString()
-
-
-
Constructor Detail
-
JSONPath
public JSONPath(String path)
-
JSONPath
public JSONPath(String path, boolean ignoreNullValue)
-
JSONPath
public JSONPath(String path, SerializeConfig serializeConfig, ParserConfig parserConfig, boolean ignoreNullValue)
-
-
Method Detail
-
isRef
public boolean isRef()
-
eval
public <T> T eval(Object rootObject, Type clazz, ParserConfig parserConfig)
- Parameters:
rootObject-clazz-parserConfig-- Returns:
- Since:
- 1.2.76
-
eval
public <T> T eval(Object rootObject, Type clazz)
- Parameters:
rootObject-clazz-- Returns:
- Since:
- 1.2.76
-
extract
public Object extract(DefaultJSONParser parser)
-
contains
public boolean contains(Object rootObject)
-
size
public int size(Object rootObject)
-
keySet
public Set<?> keySet(Object rootObject)
Extract keySet or field names from rootObject on this JSONPath.- Parameters:
rootObject- Can be a map or custom object. Array and Collection are not supported.- Returns:
- Set of keys, or
nullif not supported.
-
remove
public boolean remove(Object rootObject)
-
keySet
public static Set<?> keySet(Object rootObject, String path)
Compile jsonPath and use it to extract keySet or field names from rootObject.- Parameters:
rootObject- Can be a map or custom object. Array and Collection are not supported.path- JSONPath string to be compiled.- Returns:
- Set of keys, or
nullif not supported.
-
read
public static Object read(String json, String path)
- Parameters:
json-path-- Returns:
- Since:
- 1.2.9
-
read
public static <T> T read(String json, String path, Type clazz, ParserConfig parserConfig)
- Parameters:
json-path-clazz-parserConfig-- Returns:
- Since:
- 1.2.76
-
read
public static <T> T read(String json, String path, Type clazz)
- Parameters:
json-path-clazz-- Returns:
- Since:
- 1.2.76
-
extract
public static Object extract(String json, String path, ParserConfig config, int features, Feature... optionFeatures)
- Parameters:
json-path-- Returns:
- Since:
- 1.2.51
-
paths
public static Map<String,Object> paths(Object javaObject, SerializeConfig config)
-
getPath
public String getPath()
-
setArrayItem
public boolean setArrayItem(JSONPath path, Object currentObject, int index, Object value)
-
toJSONString
public String toJSONString()
- Specified by:
toJSONStringin interfaceJSONAware- Returns:
- JSON text
-
-