方式一(实体类):
//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>