java对象转Map<String, Object>
时间: 2024-06-16 14:03:16 浏览: 123
在Java中,将对象转换为Map<String, Object>可以通过反射来实现。下面是一个示例代码:
```java
import java.lang.reflect.Field;
import java.util.HashMap;
import java.util.Map;
public class ObjectToMapConverter {
public static Map<String, Object> convert(Object obj) {
Map<String, Object> map = new HashMap<>();
// 获取对象的所有字段
Field[] fields = obj.getClass().getDeclaredFields();
// 遍历字段,将字段名和字段值存入map中
for (Field field : fields) {
field.setAccessible(true); // 设置字段可访问
try {
Object value = field.get(obj); // 获取字段值
map.put(field.getName(), value);
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
return map;
}
}
```
使用该工具类,可以将一个Java对象转换为Map<String, Object>。例如:
```java
public class Person {
private String name;
private int age;
// 省略构造方法和其他方法
// getter和setter方法
public static void main(String[] args) {
Person person = new Person("Alice", 25);
Map<String, Object> map = ObjectToMapConverter.convert(person);
System.out.println(map);
}
}
```
输出结果为:`{name=Alice, age=25}`
阅读全文
相关推荐
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)