在reflect基础上的map和object转化
来源:互联网 发布:java jackson 编辑:程序博客网 时间:2024/05/20 23:59
/**
* Change the map structure to list and change the list to map structure
* Object为任意的对象
* @author LIUTIANFANG
* @version 2011-8-16 下午01:16:11
*/
public class MapObjectUtil {
/**
* 将对象类型的数据结构变更为Map类型的数据结构
* @param Object
* @return Map
*/
public static Map<Object,Object> objectToMap(Object o){
Map<Object, Object> map = new HashMap<Object, Object>();
Class a = o.getClass();
Field[] fs = a.getDeclaredFields();
for (int i = 0; i < fs.length; i++) {
map.put(fs[i].getName(), ReflectUtil.getFieldValue(o, fs[i].getName(), Object.class));
}
return map;
}
/**
* 将map类型的数据结构变更为object类型的数据结构
* @param Map<Object,Object>
* @return Object
*/
public static Object mapToObject(Map<Object,Object> m , Object ob){
for (Iterator iterator = m.entrySet().iterator(); iterator.hasNext();) {
Entry o = (Entry) iterator.next();
ReflectUtil.setFieldValue(ob, (String) o.getKey() , Object.class , o.getValue());
}
return ob;
}
/**
* 将map类型的数据结构变更为object类型的数据结构(忽略大小写)
* @param Map<Object,Object>
* @return Object
*/
public static Object mapToObjectDefault(Map<Object,Object> m , Object ob){
for (Iterator iterator = m.entrySet().iterator(); iterator.hasNext();) {
Entry o = (Entry) iterator.next();
ReflectUtil.setFieldValueDefault(ob, (String) o.getKey() , Object.class , o.getValue());
}
return ob;
}
}
// end
引用的ReflectUtil类地址: http://blog.csdn.net/s445320/article/details/8929415
- 在reflect基础上的map和object转化
- 在reflect基础上的list和map的转化
- List<Map<String,Object>>和二维数组的转化
- 数据类型json 和 object 的相互转化
- SuperMap Object 基本编程,在转载的基础上,进行个人整理。
- xml文件和map之间的转化
- Go的reflect机制和reflect包
- map 与object之间互相转化
- JavaScript 中 Map 和 Object 的区别
- 使用JNI和Reflect实现Object向void*的自动转换之一:问题 [原]
- 使用JNI和Reflect实现Object向void*的自动转换之二:构想 [原]
- 使用JNI和Reflect实现Object向void*的自动转换之三:学习 [原]
- 使用JNI和Reflect实现Object向void*的自动转换之四:实现 [原]
- 使用JNI和Reflect实现Object向void*的自动转换之五:测试 [原]
- 在自己写的formatName基础上,写个,将时间转化为自定义的输出字符串格式信息
- 算法实验题 车皮编序问题(转化为在全排列的基础上的堆栈问题)
- Map<String, ?>和Map<String, Object>的区别
- Hadoop---在HDFS集群基础上搭建Map/Reduce集群
- 纯html标签下单引号和双引号以及html和JS混编下单引号和双引号
- 什么时候该用MVC,什么时候该用Webform?
- PHP上传文件,AJAX文件上传
- Java基础复习:StringBuilder小练习
- 无语了,为什么投的实习简历都没有下文了?求助!!
- 在reflect基础上的map和object转化
- IP数据包格式详解
- hibernate锁 数据库大并发
- 笔试题总结 有空看看 还有网络编程
- 多线程
- C#利用反射,遍历获得一个类的所有属性名,以及该类的实例的所有属性的值
- 软件开发之50年历程——Redwine-Riddle成熟模型
- Android开发四大组件--Activity详解
- 图文例解C++类的多重继承与虚拟继承