Package org.aoju.bus.core.beans
Class PathExpression
java.lang.Object
org.aoju.bus.core.beans.PathExpression
- All Implemented Interfaces:
Serializable
Bean路径表达式,用于获取多层嵌套Bean中的字段值或Bean对象
根据给定的表达式,查找Bean中对应的属性值对象 表达式分为两种:
- .表达式,可以获取Bean对象中的属性(字段)值或者Map中key对应的值
- []表达式,可以获取集合等对象中对应index的值
- Since:
- Java 17+
- Author:
- Kimi Liu
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic PathExpression解析Bean路径表达式为Bean模式 Bean表达式,用于获取多层嵌套Bean中的字段值或Bean对象 根据给定的表达式,查找Bean中对应的属性值对象 表达式分为两种: .表达式,可以获取Bean对象中的属性(字段)值或者Map中key对应的值 []表达式,可以获取集合等对象中对应index的值获取Bean中对应表达式的值获取表达式解析后的分段列表void设置表达式指定位置(或filed对应)的值 若表达式指向一个List则设置其坐标对应位置的值,若指向Map则put对应key的值,Bean则设置字段的值 注意:toString()
-
Field Details
-
patternParts
-
-
Constructor Details
-
PathExpression
构造- Parameters:
expression- 表达式
-
-
Method Details
-
create
解析Bean路径表达式为Bean模式 Bean表达式,用于获取多层嵌套Bean中的字段值或Bean对象 根据给定的表达式,查找Bean中对应的属性值对象 表达式分为两种:- .表达式,可以获取Bean对象中的属性(字段)值或者Map中key对应的值
- []表达式,可以获取集合等对象中对应index的值
表达式栗子:
persion persion.name persons[3] person.friends[5].name ['person']['friends'][5]['name']
- Parameters:
expression- 表达式- Returns:
PathExpression
-
getPatternParts
获取表达式解析后的分段列表- Returns:
- 表达式分段列表
-
get
获取Bean中对应表达式的值- Parameters:
bean- Bean对象或Map或List等- Returns:
- 值, 如果对应值不存在, 则返回null
-
toString
-
set
设置表达式指定位置(或filed对应)的值 若表达式指向一个List则设置其坐标对应位置的值,若指向Map则put对应key的值,Bean则设置字段的值 注意:1. 如果为List,如果下标不大于List长度,则替换原有值,否则追加值 2. 如果为数组,如果下标不大于数组长度,则替换原有值,否则追加值
- Parameters:
bean- Bean、Map或Listvalue- 值
-