方式一(實體類):
//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>