public static String checkFieldValueNull(Object bean) {
StringBuffer sb=new StringBuffer();
sb.append("");
if (bean == null) {
return sb.toString();
}
sb.append(bean.getClass().getName()+" 以下属性为空 ");
Class<?> cls = bean.getClass();
Method[] methods = cls.getDeclaredMethods();
Field[] fields = cls.getDeclaredFields();
for (Field field : fields) {
try {
String fieldGetName = parGetName(field.getName());
if (!checkGetMet(methods, fieldGetName)) {
continue;
}
Method fieldGetMet = cls.getMethod(fieldGetName, new Class[]{});
Object fieldVal = fieldGetMet.invoke(bean, new Object[]{});
if (fieldVal != null) {
if ("".equals(fieldVal)) {
sb.append(fieldGetMet.getName().toString()+",");
}
}else{
sb.append( fieldGetMet.getName().toString()+",");
}
} catch (Exception e) {
continue;
}
}
return sb.toString();
}
/**
* 拼接某属性的 get方法
*
*/
private static String parGetName(String fieldName) {
if (null == fieldName || "".equals(fieldName)) {
return null;
}
int startIndex = 0;
if (fieldName.charAt(0) == '_'){
startIndex = 1;
}
return "get"
+ fieldName.substring(startIndex, startIndex + 1).toUpperCase()
+ fieldName.substring(startIndex + 1);
}
/**
* 判断是否存在某属性的 get方法
*
*/
private static boolean checkGetMet(Method[] methods, String fieldGetMet) {
for (Method met : methods) {
if (fieldGetMet.equals(met.getName())) {
return true;
}
}
return false;
}
遍历对象为null的属性
最新推荐文章于 2025-06-04 20:30:57 发布
3684

被折叠的 条评论
为什么被折叠?



