补充技术文档

This commit is contained in:
YunaiV
2021-02-21 23:11:18 +08:00
parent 8605cc35c9
commit 593e14f3a9
5 changed files with 9 additions and 43 deletions

View File

@@ -1,31 +0,0 @@
package cn.iocoder.dashboard.util.object;
import cn.hutool.core.util.ReflectUtil;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
/**
* 反射 Util 工具类,解决 {@link cn.hutool.core.util.ReflectUtil} 无法满足的情况
*
* @author 芋道源码
*/
public class ReflectUtils {
public static void setFinalFieldValue(Object obj, String fieldName, Object value) {
// 获得 Field
if (obj == null) {
return;
}
Field field = ReflectUtil.getField(obj.getClass(), fieldName);
if (field == null) {
return;
}
// 获得该 Field 的 modifiers 属性,为非 final
ReflectUtil.setFieldValue(field, "modifiers", field.getModifiers() & ~Modifier.FINAL);
// 真正,设置值
ReflectUtil.setFieldValue(obj, field, value);
}
}