下面一段简单的代码给大家分享java 获取对象中为null的字段,具体代码如下所述:
private static String[] getNullPropertyNames(Object source) { final BeanWrapper src = new BeanWrapperImpl(source); java.beans.PropertyDescriptor[] pds = src.getPropertyDescriptors(); Set<String> 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获取到
话不多说,直接贴代码,这里可以进行对json对象参数进行校验的,找到不为空的参数,或者对象所有属性都不为空这样的校验,也许就方便多了呢。
public static List<String> getValue(Object object,List<String> list){ Field[] field = object.getClass().getDeclaredFields(); for(int j=0 ; j<field.length ; 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; }
总结
以上所述是小编给大家介绍的java 获取对象中为null的字段实例代码,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
我有一个可选对象: 我想返回或如果为空返回。 我们是否有比遵循更复杂的方法来实现这一点?
问题内容: 说我有一个具有一些成员变量的类,一个或多个是具有成员变量的另一个类。如何获得两个类中每个变量的值? 我可以通过以下方式获取变量:通过调用Foo对象的值,然后再次对其进行迭代以获取子类变量。 但是,如何在没有该类实例的情况下获取每个子类成员变量的值?我的平凡示例之所以有用,是因为该类的每个实例的变量都相同,因此我可以调用 我想如果能以某种方式从字段中获取对象的实例,那可能会起作用? 提前
本文向大家介绍Java中Console对象实例代码,包括了Java中Console对象实例代码的使用技巧和注意事项,需要的朋友参考一下 在JDK 6中新增了java.io.Console类,可以让您取得字节为基础的主控台装置,例如,您可以藉由System新增的console()方法取得标准输入输出装置的Console对象,并利用它来执行一些简单的主控台文字输入输出,例如: ConsoleDemo.
本文向大家介绍Java对象流实例代码,包括了Java对象流实例代码的使用技巧和注意事项,需要的朋友参考一下 将日期对象和向量对象写入文件,然后从文件中读出并输出到屏幕上 对象输入流)可读取使用对象输出流写入的原始数据和类型,与文件输入输出流一起可以实现对象的持久性存储。 结果: Fri Jul 24 11:28:01 CST 2015 [不求有功, 才华出众, 瞬息万变] 成功构建 (总时间: 2
向createProxy和getProxy这两个方法传了个接口类型的类,为什么生成代理对象为null呢【吐血】大佬们救救
问题内容: 情况:我收集了文档,每个文档都包含以下字段:“ _ id”(ObjectId),“ userId”(String),但也可以是字段“ files”(Object)。 当我这样做时: 结果,我得到了所有记录,这很好。 但是,当我这样做时,仅在“文件”字段存在的地方获取记录-结果是错误的。 是否由于我试图获取“对象”字段而发生错误?以及如何使用查询或条件解决此问题? 问题答案: 您可以构造