反射机制的简单应用
//interge或Long的置0,BigDecimal类型的设置默认值为0.0000
Field[] fields=QualityProblem.class.getDeclaredFields();
for(Field field:fields){
// Object type=field.getType().toString().substring(field.getType().toString().lastIndexOf(".")+1, field.getType().toString().length());
//String name=field.getName();
field.setAccessible(true);
try{
if(field.get(po)==null||"".equals(field.get(po))){
if(field.getType()==Long.class||field.getType()==Integer.class){
field.set(po, 0l);
}else if(field.getType()==BigDecimal.class){
field.set(po, 0.0000);
}
}
}catch(Exception e){
if(field.getType()==Long.class||field.getType()==Integer.class){
field.set(po, 0l);
}else if(field.getType()==BigDecimal.class){
field.set(po, 0.0000);
}
}
/*if(field.get(po)==null||"".equals(field.get(po))){
if(field.getType()==Long.class||field.getType()==Integer.class){
field.set(po, 0);
}else if(field.getType()==BigDecimal.class){
field.set(po, 0.0000);
}
}
}
浙公网安备 33010602011771号