java 写一个方法,入参是map,map的key是属性名value是属性值,通过反射将map的值赋值到对象中
时间: 2024-02-28 08:55:18 浏览: 203
Java中 List《map》把里面map中某个key相同记录的其他key 的 value 合并
可以参考以下代码:
```java
public static void setValues(Map<String, Object> map, Object object) throws Exception {
Class<?> clazz = object.getClass();
for (Map.Entry<String, Object> entry : map.entrySet()) {
String fieldName = entry.getKey();
Object value = entry.getValue();
Field field = clazz.getDeclaredField(fieldName);
field.setAccessible(true);
field.set(object, value);
}
}
```
首先,获取对象的 `Class` 类型。然后,遍历 `map` 中的每一个键值对,将键作为属性名,值作为属性值,通过反射获取对象的属性,并把值赋值给对象。需要注意的是,需要将属性设置为可访问的,即调用 `setAccessible(true)` 方法。
阅读全文