Java把把List转换成Map<String,Object>形式通用方法封装工具
/**
* 用于把List<Object>转换成Map<String,Object>形式,便于更新操作
* @author mar
* @param keyName 主键属性
* @param list 集合
* @return 返回对象
*/
public static <T> Map<String, Object> listToMap(String keyName, List<T> list){
Map<String, Object> m = new HashMap<>();
try {
for (T t : list) {
PropertyDescriptor pd = new PropertyDescriptor(keyName,
t.getClass());
//获得get方法
Method getMethod = pd.getReadMethod();
//执行get方法返回一个Object
Object o = getMethod.invoke(t);
m.put(o.toString(), t);
}
return m;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}