Java 判断Object对象的所有属性值是否为空。
阿里
阅读:1569
2021-03-31 20:58:38
评论:0
问题:实例化一个对象,对象特定的属性值存在(主键),其他的属性值全部为null。
要求:编写一个属性验证工具类,排除特性属性返回Boolean 标识,判断对象其他的属性是否为null 值。
package ****;
import java.lang.reflect.Field;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class ObjectFildValidate {
public static final Logger logger = LoggerFactory.getLogger(ObjectFildValidate.class);
/**
*
* @Title: validateFild
* @Description: 检查指定对象的属性值是否为空,排除指定的属性值
* @param: @param object
* @param: @param exclFild
* @param: @return
* @return: boolean
* @throws
*/
public static boolean validateFild(Object object, List exclFild){
boolean target = false;
for (Field f : object.getClass().getDeclaredFields()) {
f.setAccessible(true);
try {
String name = f.getName();
// 判断属性名称是否在排除属性值中
if(!exclFild.contains(name)){
if (f.get(object) != null) { //判断字段是否为空,并且对象属性中的基本都会转为对象类型来判断
target = true;
break;
}
}
} catch (IllegalArgumentException e) {
target = false;
logger.error("对象属性解析异常" + e.getMessage());
return target;
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
target = false;
logger.error("对象属性解析异常" + e.getMessage());
return target;
}
}
return target;
}
}
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。