传入Map返回实体

来源:互联网 发布:断电后mysql无法启动 编辑:程序博客网 时间:2024/05/16 10:32
public static Object getObject(Map<String, String[]> map,Object obj){
 try{
 if(!map.isEmpty()){
for(String str:map.keySet()){
String o = null;
if(!str.isEmpty()){
o = map.get(str)[0];
}
Field[] fd = obj.getClass().getDeclaredFields();
for(Field field:fd){
int mod = field.getModifiers();
if(Modifier.isAbstract(mod) || Modifier.isFinal(mod)){
continue;
}
if(field.getName().equals(str)){
field.setAccessible(true);
if(field.getType().getName().equals("java.lang.Integer")){
field.set(obj, Integer.parseInt(o));
}
if(field.getType().getName().equals("java.lang.Double")){
field.set(obj, Double.parseDouble(o));
}
if(field.getType().getName().equals("java.lang.Float")){
field.set(obj, Float.parseFloat(o));
}
if(field.getType().getName().equals("java.lang.Long")){
field.set(obj, Long.parseLong(o));
}
if(field.getType().getName().equals("java.lang.String")){
field.set(obj, o);
}
if(field.getType().getName().equals("java.math.BigInteger")){
field.set(obj, new BigInteger(o));
}
}
}

 }
 }catch(Exception e){
 e.printStackTrace();
 }
 return obj;
 }
0 0