package com.citi.dashboard.excel;
import java.lang.reflect.Field;
public class ReflectClass {
public static Object setField(String fieldName, Object ownerObj, Object newFieldValue) throws Exception{
if (ownerObj == null || fieldName == null || newFieldValue == null)
return null;
Field field = ownerObj.getClass().getDeclaredField(fieldName);
if(field != null) {
field.setAccessible(true);
// 字段名
System.out.print(field.getName() + ",");
// 字段值
if (field.getType().getName().equals(
java.lang.Integer.class.getName())
|| field.getType().getName().equals("int")) {
// Integer type
field.setInt(ownerObj, (Integer) newFieldValue);
} else if (field.getType().getName().equals(
java.lang.Boolean.class.getName())
|| field.getType().getName().equals("boolean")) {
// Boolean type
field.setBoolean(ownerObj, (Boolean) newFieldValue);
} else if (field.getType().getName().equals(
java.lang.Double.class.getName())
|| field.getType().getName().equals("double")) {
// Boolean type
field.setDouble(ownerObj, (Double) newFieldValue);
} else if (field.getType().getName().equals(
java.lang.Long.class.getName())
|| field.getType().getName().equals("long")) {
// Boolean type
field.setDouble(ownerObj, (Long) newFieldValue);
} else if (field.getType().getName().equals(
java.lang.Short.class.getName())
|| field.getType().getName().equals("short")) {
// Boolean type
field.setDouble(ownerObj, (Short) newFieldValue);
} else if (field.getType().getName().equals(
java.lang.Float.class.getName())
|| field.getType().getName().equals("float")) {
// Boolean type
field.setDouble(ownerObj, (Float) newFieldValue);
} else if (field.getType().getName().equals(
java.lang.Character.class.getName())
|| field.getType().getName().equals("char")) {
// Boolean type
field.setDouble(ownerObj, (Character) newFieldValue);
} else if (field.getType().getName().equals(
java.lang.Byte.class.getName())
|| field.getType().getName().equals("byte")) {
// Boolean type
field.setDouble(ownerObj, (Byte) newFieldValue);
} else {
// Object
field.set(ownerObj, newFieldValue);
}
return ownerObj;
}
return null;
}
}
ReflectClass
最新推荐文章于 2021-06-02 16:38:45 发布