java map转对象
原文地址:
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转对象相关推荐
- java map存储对象_java-在ConcurrentHashMap中存储复杂对象
根据实践中的Java Concurrency,以下代码可能引发断言错误: 如果要调用发布线程以外的线程 assertSanity,它可能会引发AssertionError public class H ...
- java map存储对象_JAVA:查找存储在hashMap中的对象的最佳性能方法
如果你想要速度并且总是在寻找一个特定属性,那么最好的办法是创建另一个用该属性键入的"缓存"哈希映射. 对于不到一百万个条目,占用的内存将是无关紧要的,并且哈希映射查找将比任何其他解 ...
- Java Map转对象
导入Maven坐标 <dependency><groupId>com.alibaba</groupId><artifactId>fastjson< ...
- java map对象排序输出_java实现对象的排序(List和Map)
java实现对象的排序(List和Map) List和Map的排序 在实际的开发当中,我们经常 在文件浏览的时候经常有多种浏览方式,按时间整箱排序,逆向排序,按大小正逆向排序 ,按 按价格正逆向排序, ...
- java map转JSON对象
java map转JSON对象 net.sf.json.JSONObject.fromObject(map)
- Java中Map转对象
项目中用到过map转对象,之前偶尔看过同事的代码,使用map转对象时,做循环.拿值.判空.赋值,对象参数少偶尔可以用一下,如果对象参数过多,啧啧啧,那就是一条壮丽的风景线,所以自己整理了下,出一个ma ...
- java中map和对象互转工具类
在项目开发中,经常碰到map转实体对象或者对象转map的场景,工作中,很多时候我们可能比较喜欢使用第三方jar包的API对他们进行转化,而且用起来也还算方便,比如像fastJson就可以轻松实现map ...
- Java中如何优雅的把Map转为对象
对于一个Map我们如何把它转成对应的对象呢,其实方法很多,我之前用的比较多的是通过JSON转换,如下: public class Person {private String userName;pri ...
- Java map 知识
Java map: Map 接口中键和值一一映射. 可以通过键来获取值 map 的方法如下: 序号 方法描述 1 void clear( ) 从此映射中移除所有映射关系(可选操作). 2 boole ...
最新文章
- 最后3天,BDTC 2019早鸟票即将售罄,超强阵容及议题抢先曝光!
- javascript回车完美实现tab切换功能
- java判断回文字符串几种简单的实现
- 第二阶段—个人工作总结08
- div的contentEnable属性
- 3.3线性回归简洁实现(API的使用)
- Redis|Sentinel 高可用架构
- 红队技巧-域渗透的协议利用
- Java笔记-RabbitMQ中生产者端confirm模式
- js 模拟点击_爬虫js逆向之无限debugger--抖音第三方数据分析平台的坑
- AD教程系列 | 1-认识基本电子元器件、封装和读数
- 用编程解决生活中的问题
- R语言大作业(四):上海市、东京 1997-2018 年GDP值分析
- Visio绘图记录(1)
- 从低位开始取出长整型变量s中奇数位上的数依次构成一个新数放在t中
- kali无线安全分析工具
- 组建自己的局域网(可以将PC机实现为服务器)
- LSTM和GRU的对比和分析
- C++ vector详细用法
- FileSystemWatcher的Created事件问题