/**
*
* 将对象属性的null值转换为""
* @param obj
* 转换对象
* @author jianye@iflytek.com
*/
@SuppressWarnings({ "rawtypes", "unchecked" })
public static void nullConverNullString(Object obj){
//非空开始转换
if(null != obj){
//获取该对象的类
Class classz = obj.getClass();
//获取该对象的所有属性
Field[] fields = classz.getFields();
//遍历属性值,取得所有属性值为null的属性
for (Field field : fields) {
try{
//获取属性类型
Type type = field.getGenericType();
//排除类型为Boolean的属性
if(!type.toString().equals("boolean")){
//获取get方法
Method method = classz.getMethod("get"+change(field.getName()));
//调用get方法获取值
Object fieldValue = method.invoke(obj);
//为空处理
if(null == fieldValue){
//获取set方法,进行设值(值的类型需要确定)
Method setMethod = classz.getMethod("set"+change(field.getName()), new Class[]{String.class});
//调用set方法
setMethod.invoke(obj, new Object[]{""});
}
}
}catch (Exception e) {
e.printStackTrace();
}
}
}
}
/**
*
* {说明该函数的含义和作用,如果函数较为复杂,请详细说明}
* @return
* @author jianye@iflytek.com
*/
public static String change(String src){
if(StringUtils.isNotBlank(src)){
StringBuffer orig = new StringBuffer(src);
//将首字母转换为大写
orig.setCharAt(0, Character.toUpperCase(orig.charAt(0)));
//返回结果集
return orig.toString();
}
return null;
}


05-21
09-26