Map<String, Object> 转实体类对象工具类

public static <T> T map2Object(Map<String, Object> map, Class<T> clazz) {

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

if (map == null) {
return null;
}
T obj = null;
try {
// 使用newInstance来创建对象
obj = clazz.newInstance();
// 获取类中的所有字段
Field[] fields = obj.getClass().getDeclaredFields();
for (Field field : fields) {
int mod = field.getModifiers();
// 判断是拥有某个修饰符
if (Modifier.isStatic(mod) || Modifier.isFinal(mod)) {
continue;
}
// 当字段使用private修饰时,需要加上
field.setAccessible(true);
// 获取参数类型名字
String filedTypeName = field.getType().getName();
// 判断是否为时间类型,使用equalsIgnoreCase比较字符串,不区分大小写
// 给obj的属性赋值
if (filedTypeName.equalsIgnoreCase("java.util.date")) {
String datetimestamp = (String) map.get(field.getName());
if (datetimestamp.equalsIgnoreCase("null")) {
field.set(obj, null);
} else {
field.set(obj, sdf.parse(datetimestamp));
}
} else {
field.set(obj, map.get(field.getName()));
}
}
} catch (Exception e) {
e.printStackTrace();
}
return obj;
}

原文地址:https://www.cnblogs.com/zxy-come-on/p/12594693.html

时间: 2024-08-29 21:58:19

Map<String, Object> 转实体类对象工具类的相关文章

List&lt;Map&lt;String, Object&gt;&gt;相关

2016年8月6日13:53:00 --------------------------- List<Map<String, Object>> List集合新增列 则需要: List<Map<String, Object>> list_new = new ArrayList<Map<String, Object>>(); //新建list集合对象,用于存储新的数据 for (Map<String, Object> map

javaBean与Map&lt;String,Object&gt;互转

1. 为什么要实现javaBean与Map<String,Object>相互转换? 用过spring的都知道spring的MVC框架中有一个BaseCommandController对象,利用这个对象我们就可以很方便的将从客户端传递过来的参数封装到一个JavaBean对象中去,而不需要我们request.getParameter("name");bean.setName(name);了,从而也简化了不少的工作.如果大家用过BeanUtils.populate的话,就知道,这

对象工具类 - ObjectUtils.java

对象工具类,提供对象克隆.获取对象属性.类型判断.Map转换对象.对象转Map.设置对象属性等. 源码如下:(点击下载 -  ObjectUtils.java .JsonUtils.java .gson-2.2.4.jar .commons-lang-2.6.jar) 1 import java.io.Serializable; 2 import java.lang.reflect.Field; 3 import java.lang.reflect.Method; 4 import java.u

利用java反射机制实现List&lt;Map&lt;String, Object&gt;&gt;转化为List&lt;JavaBean&gt;

最近在用mybatis做项目,遇到将date格式化显示到easyui的问题,需要将List<Map<String, Object>>转化为List<JavaBean>,研究好久,终于在网上找到了一个方法: 核心方法如下: [java] view plain copy /** * 根据List<Map<String, Object>>数据转换为JavaBean数据 * @param datas * @param beanClass * @retur

List&lt;Object&gt;转换成Map&lt;String,Object&gt;形式

上一篇讲到了将List<Map<String,Object>> 转换为 List<javaBean>,这次反过来: /** * 用于把List<Object>转换成Map<String,Object>形式,便于存入缓存 * @author zhang_bo * @param keyName 主键属性 * @param list 集合 * @return 返回对象 */ private <T> Map<String, T>

EncryptHelper加密对象-工具类

using System; using System.IO; using System.Security.Cryptography; using System.Text; using System.Web.Security; namespace Common.Utility { /// <summary> /// Author:Kt /// Date Created:2011-04-01 /// Description:加密对象-工具类 /// </summary> public

今天学会了对List&lt;Map&lt;String,Object&gt;&gt;的排序

Collections.sort(dyList, new Comparator<Map<String, Object>>() { public int compare(Map<String, Object> arg0, Map<String, Object> arg1) { int map1value=0; int map2value=0; if(arg0.get("getlicenseDate")!=null&&!arg

List&lt;map&lt;String,Object&gt;&gt;

List<Map<String, Object>> list = sendService.getApproveMsgToMap(); //第一种 //遍历map for (Map<String, Object> m : list) { for (String k : m.keySet()) { System.out.println(k + " : " + m.get(k)); } } //第二种 for (int i = 0; i < list

如何过滤List&lt;Map&lt;String,Object&gt;&gt; 中的重复Map

最近遇到一个问题,就是如何过滤一个List<Map<String,Object>> 中重复的Map,废话不多说,直接上代码. //去除重复的Map //cfArraylist 表示重复的 List<Map<String,Object>> //listMap 表示去重复数据后的 List<Map<String,Object>> Map<String, Map> msp = new HashMap<String, Map