//查询出对象所有的属性
Field[] fields = obj.getClass().getDeclaredFields();
//用于判断所有属性是否为空,如果参数为空则不查询
boolean flag = false;
for (Field field : fields) {
//不检查 直接取值
field.setAccessible(true);
try {
if(StringUtils.isNotNull(field.get(obj))) {
//不为空
flag = true;
//当有任何一个参数不为空的时候则跳出判断直接查询
break;
}
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
工具类:
其中 obj 为需要判断的对象。StringUtils 是手动写的一个工具类。其中关于非空判断的代码为: