import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 将bean转化成map
* 注意:也会将list里的泛型转为map,其他不转
*/
public class BeanToMapUtil {
public static Map<String,Object> toMap(Object object) throws Exception{
if(null == object)
return null;
Class<?> aClass = object.getClass();
Field[] fields = aClass.getDeclaredFields();
Map<String,Object> rtMap = new HashMap<>(fields.length);
for (Field field : fields) {
field.setAccessible(true);
if(field.getType() == List.class && null != field.get(object)){
List l = (List)field.get(object);
List<Map<String,Object>> lMap = new ArrayList<>();
for (Object o : l) {
lMap.add(toMap(o));
}
rtMap.put(field.getName(), lMap);
}else {
rtMap.put(field.getName(), field.get(object));
}
}
return rtMap;
}
}
bean转map
最新推荐文章于 2024-07-19 22:00:34 发布
本文介绍了一个实用的Java工具类,用于将Java Bean对象及其包含的List泛型转换为Map集合,便于数据处理和JSON序列化。此工具类特别适用于需要将复杂对象结构转化为简单数据结构的场景。

1863

被折叠的 条评论
为什么被折叠?



