如何将Map<String,Object> 转换为实体类
时间: 2023-11-18 19:04:37 浏览: 129
可以通过使用Java反射来将Map<String,Object>转换为实体类,具体步骤如下:
1. 获取实体类的Class对象
2. 创建实体类对象
3. 遍历Map,使用反射获取实体类中对应的属性并为其赋值
4. 返回实体类对象
以下是示例代码:
```
public static <T> T mapToEntity(Map<String, Object> map, Class<T> clazz) throws Exception {
T entity = clazz.newInstance();
for (Map.Entry<String, Object> entry : map.entrySet()) {
String fieldName = entry.getKey();
Object fieldValue = entry.getValue();
Field field = clazz.getDeclaredField(fieldName);
field.setAccessible(true);
field.set(entity, fieldValue);
}
return entity;
}
```
调用示例:
```
Map<String, Object> map = new HashMap<>();
map.put("name", "张三");
map.put("age", 20);
map.put("gender", "男");
Person person = mapToEntity(map, Person.class);
```
阅读全文