如何检查一个对象是否至少有一个非null的字段?

时间:2015-11-26 08:31:11

标签: java reflection

我有一组由第三方库生成的bean。

如何检查每个bean是否至少有一个非空的字段?

1 个答案:

答案 0 :(得分:2)

使用反射很容易解决问题。只需将此方法添加到您的bean:

public boolean hasAtLeastOneNonEmpty() {
    Class<? extends QueryBean> class1 = this.getClass();
    Field[] fields = class1.getDeclaredFields();
    for (Field field : fields) {
        try {
            if (field.get(this) != null) {
                return true;
            }
        } catch (IllegalArgumentException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    return false;
}