java中遍历实体类,获取属性名和属性值

方式一(实体类):

//java中遍历实体类,获取属性名和属性值
        public static void testReflect(Object model) throws Exception{
            for (Field field : model.getClass().getDeclaredFields()) {
                field.setAccessible(true);
                System.out.println(field.getName() + ":" + field.get(model) );
                }
        }

方式二(实体类或拓展类):

public static void  test2(Object obj) {
               try {
                   PropertyUtilsBean propertyUtilsBean = new PropertyUtilsBean();
                   PropertyDescriptor[] descriptors = propertyUtilsBean.getPropertyDescriptors(obj);
                   for (int i = 0; i < descriptors.length; i++) {
                       String name = descriptors[i].getName();
                       if (!"class".equals(name)) {
                         System.out.println(name+":"+ propertyUtilsBean.getNestedProperty(obj, name));
                       }
                   }
               } catch (Exception e) {
                   e.printStackTrace();
               }
       }

pom.xml需要配依赖

<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>

<version>1.9.3</version>
</dependency>

原文地址:https://www.cnblogs.com/wpcnblog/p/9252260.html