java打印对象中的属性名和值

    xiaoxiao2021-12-15  35

    方法一:只能打印第一层的属性,如果属性为对象,则不能递归,后期可以完善

    public static String toString(Object obj, Class<?> clazz) { if(obj == null){ return ""; } Field[] fields = clazz.getDeclaredFields();// 根据Class对象获得属性 私有的也可以获得 String s = ""; try { for (Field f : fields) { f.setAccessible(true); // 设置些属性是可以访问的 Object val = f.get(obj); // 得到此属性的值 String name = f.getName(); // 得到此属性的名称 s += name + ":" + val + ","; } } catch (IllegalAccessException e) { LOG.info("获取bean的值出错!",e); } return s; } 方法二:

    使用apache的包:ReflectionToStringBuilder.toString(brandPackageOrderVo)

    <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.4</version> </dependency>

    转载请注明原文地址: https://ju.6miu.com/read-1000397.html

    最新回复(0)