java中判断对象中属性值是否为空
最近遇到后台接收值的时候,需要对接收对象进行非空校验,第一时间想到的就是写一堆的if判断,但是仔细想了想,如果字段的属性太多,需要写大量的if判断,并且方法也不能够重用,所以,就搜索了相关资料看看有没有通用的方法来实现,现将方法记录如下:
思路是,使用java中的反射机制,来获取对象的属性清单,进而获取该属性的值。
具体实现如下:
public boolean checkObjFieldIsNull(Object obj) throws IllegalAccessException { boolean flag = false; for(Field f : obj.getClass().getDeclaredFields()){ f.setAccessible(true); log.info(f.getName()); if(f.get(obj) == null){ flag = true; return flag; } } return flag; }