This commit is contained in:
Looly
2022-11-10 12:11:56 +08:00
parent ff6adb3c68
commit fa115dffbc
2 changed files with 3 additions and 5 deletions

View File

@@ -141,16 +141,15 @@ public class BeanPath implements Serializable {
* @param value 值
* @return 值
*/
private Object set(Object bean, List<String> patternParts, boolean nextNumberPart, Object value) {
private void set(Object bean, List<String> patternParts, boolean nextNumberPart, Object value) {
Object subBean = this.get(patternParts, bean, true);
if (null == subBean) {
final List<String> parentParts = getParentParts(patternParts);
this.set(bean, parentParts, lastIsNumber(parentParts), nextNumberPart ? new ArrayList<>() : new HashMap<>());
// 避免get方法的重复调用
subBean = this.set(bean, parentParts, lastIsNumber(parentParts), nextNumberPart ? new ArrayList<>() : new HashMap<>());
//set中有可能做过转换因此此处重新获取bean
subBean = this.get(patternParts, bean, true);
}
BeanUtil.setFieldValue(subBean, patternParts.get(patternParts.size() - 1), value);
return value;
}
/**