java get null_java 获取对象中为null的字段实例代码
下面一段簡單的代碼給大家分享java 獲取對象中為null的字段,具體代碼如下所述:
private static String[] getNullPropertyNames(Object source) {
final BeanWrapper src = new BeanWrapperImpl(source);
java.beans.PropertyDescriptor[] pds = src.getPropertyDescriptors();
Set emptyNames = new HashSet<>();
for(java.beans.PropertyDescriptor pd : pds) {
Object srcValue = src.getPropertyValue(pd.getName());
if (srcValue == null) emptyNames.add(pd.getName());
}
String[] result = new String[emptyNames.size()];
return emptyNames.toArray(result);
}
PS:將Java對象中屬性值為null獲取到
話不多說,直接貼代碼,這里可以進(jìn)行對json對象參數(shù)進(jìn)行校驗(yàn)的,找到不為空的參數(shù),或者對象所有屬性都不為空這樣的校驗(yàn),也許就方便多了呢。
public static List getValue(Object object,List list){
Field[] field = object.getClass().getDeclaredFields();
for(int j=0 ; j
String name = field[j].getName();
name = name.substring(0,1).toUpperCase()+name.substring(1);
String type = field[j].getGenericType().toString();
Method m;
Object value;
try {
m = object.getClass().getMethod("get"+name);
value = m.invoke(object);
if(value == null || "".equals(value)){
list.add(name);
}
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
}
}
return list;
}
總結(jié)
以上所述是小編給大家介紹的java 獲取對象中為null的字段實(shí)例代碼,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時(shí)回復(fù)大家的!
總結(jié)
以上是生活随笔為你收集整理的java get null_java 获取对象中为null的字段实例代码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql 分页效率_MYSql分页查询
- 下一篇: python生成器 图片分类_Pytho