原文地址:
http://www.open-open.com/code/view/1423280939826

1.使用使用org.apache.commons.beanutils进行转换,该方式可以把继承自父类的属性字段也进行赋值,靠谱.


public static Object mapToObject(Map<String, Object> map, Class<?> beanClass) throws Exception {    if (map == null)  return null;  Object obj = beanClass.newInstance();  org.apache.commons.beanutils.BeanUtils.populate(obj, map);  return obj;  }    public static Map<?, ?> objectToMap(Object obj) {  if(obj == null)  return null;   return new org.apache.commons.beanutils.BeanMap(obj);  }    

2.使用java的reflect进行转换,转换后的对象继承父类的字段没有正确赋值

public static Object mapToObject(Map<String, Object> map, Class<?> beanClass) throws Exception {    if (map == null)  return null;    Object obj = beanClass.newInstance();  Field[] fields = obj.getClass().getDeclaredFields();   for (Field field : fields) {    int mod = field.getModifiers();    if(Modifier.isStatic(mod) || Modifier.isFinal(mod)){    continue;    }    field.setAccessible(true);    field.set(obj, map.get(field.getName()));   }   return obj;    }    public static Map<String, Object> objectToMap(Object obj) throws Exception {    if(obj == null){    return null;    }   Map<String, Object> map = new HashMap<String, Object>();    Field[] declaredFields = obj.getClass().getDeclaredFields();    for (Field field : declaredFields) {    field.setAccessible(true);  map.put(field.getName(), field.get(obj));  }    return map;  }   

3.结束

java map转对象相关推荐

  1. java map存储对象_java-在ConcurrentHashMap中存储复杂对象

    根据实践中的Java Concurrency,以下代码可能引发断言错误: 如果要调用发布线程以外的线程 assertSanity,它可能会引发AssertionError public class H ...

  2. java map存储对象_JAVA:查找存储在hashMap中的对象的最佳性能方法

    如果你想要速度并且总是在寻找一个特定属性,那么最好的办法是创建另一个用该属性键入的"缓存"哈希映射. 对于不到一百万个条目,占用的内存将是无关紧要的,并且哈希映射查找将比任何其他解 ...

  3. Java Map转对象

    导入Maven坐标 <dependency><groupId>com.alibaba</groupId><artifactId>fastjson< ...

  4. java map对象排序输出_java实现对象的排序(List和Map)

    java实现对象的排序(List和Map) List和Map的排序 在实际的开发当中,我们经常 在文件浏览的时候经常有多种浏览方式,按时间整箱排序,逆向排序,按大小正逆向排序 ,按 按价格正逆向排序, ...

  5. java map转JSON对象

    java map转JSON对象 net.sf.json.JSONObject.fromObject(map)

  6. Java中Map转对象

    项目中用到过map转对象,之前偶尔看过同事的代码,使用map转对象时,做循环.拿值.判空.赋值,对象参数少偶尔可以用一下,如果对象参数过多,啧啧啧,那就是一条壮丽的风景线,所以自己整理了下,出一个ma ...

  7. java中map和对象互转工具类

    在项目开发中,经常碰到map转实体对象或者对象转map的场景,工作中,很多时候我们可能比较喜欢使用第三方jar包的API对他们进行转化,而且用起来也还算方便,比如像fastJson就可以轻松实现map ...

  8. Java中如何优雅的把Map转为对象

    对于一个Map我们如何把它转成对应的对象呢,其实方法很多,我之前用的比较多的是通过JSON转换,如下: public class Person {private String userName;pri ...

  9. Java map 知识

    Java map: Map 接口中键和值一一映射. 可以通过键来获取值 map 的方法如下: 序号 方法描述 1 void clear( )  从此映射中移除所有映射关系(可选操作). 2 boole ...

最新文章

  1. 最后3天,BDTC 2019早鸟票即将售罄,超强阵容及议题抢先曝光!
  2. javascript回车完美实现tab切换功能
  3. java判断回文字符串几种简单的实现
  4. 第二阶段—个人工作总结08
  5. div的contentEnable属性
  6. 3.3线性回归简洁实现(API的使用)
  7. Redis|Sentinel 高可用架构
  8. 红队技巧-域渗透的协议利用
  9. Java笔记-RabbitMQ中生产者端confirm模式
  10. js 模拟点击_爬虫js逆向之无限debugger--抖音第三方数据分析平台的坑
  11. AD教程系列 | 1-认识基本电子元器件、封装和读数
  12. 用编程解决生活中的问题
  13. R语言大作业(四):上海市、东京 1997-2018 年GDP值分析
  14. Visio绘图记录(1)
  15. 从低位开始取出长整型变量s中奇数位上的数依次构成一个新数放在t中
  16. kali无线安全分析工具
  17. 组建自己的局域网(可以将PC机实现为服务器)
  18. LSTM和GRU的对比和分析
  19. C++ vector详细用法
  20. FileSystemWatcher的Created事件问题

热门文章

  1. 机器学习中的数学——概率分布
  2. 解读病毒式营销的典型案例
  3. 【炫酷EXCEL】可视化分析动态看板
  4. 吴恩达.深度学习系列-C4卷积神经网络-W2深度卷积模型案例
  5. 基于Android的家庭理财系统的设计与实现.rar(毕业论文+项目源码)
  6. shell编程(六) : [shell基础] 基本shell脚本
  7. OSM下载上海市道路地图,并在QGIS显示
  8. kafka源码分析之副本管理-ReplicaManager
  9. 如何自己制作CHM文件
  10. 小米6X Android耗电,小米6x电池耐用吗 小米6X充电测试