java中遍历实体类,获取属性名和属性值
时间: 2023-07-16 20:13:37 浏览: 224
java反射遍历实体类属性和类型,并赋值和获取值的简单方法
5星 · 资源好评率100%
可以通过反射来实现遍历实体类,获取属性名和属性值。以下是一个示例代码:
```java
public class EntityUtils {
public static Map<String, Object> getFieldMap(Object obj) throws Exception {
Map<String, Object> map = new HashMap<>();
Class<?> clazz = obj.getClass();
Field[] fields = clazz.getDeclaredFields();
for (Field field : fields) {
field.setAccessible(true);
String name = field.getName();
Object value = field.get(obj);
map.put(name, value);
}
return map;
}
}
```
这个方法接受一个对象参数,返回一个Map,其中包含了对象的所有属性名和属性值。在方法内部,先通过传入的对象获取到其Class对象,然后通过Class对象的getDeclaredFields方法获取到所有的成员变量(包括私有成员变量)。接着遍历所有的成员变量,将属性名和属性值存入Map中返回。注意,在遍历之前需要将成员变量的访问权限设置为可访问,否则会抛出IllegalAccessException异常。
阅读全文