zoukankan      html  css  js  c++  java
  • 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;
    }

  • 相关阅读:
    高级算法(1):
    spark浅谈(3):
    linux学习笔记(1):
    数据分析之pandas(1)
    数据分析之期权
    数据分析之蒙特卡洛模拟
    未能加载文件或程序集"xxxxxx"或它的某一个依赖项
    未能映射路径"/"
    部署MVC项目ManagedPipelineHandler报错
    IIS记录
  • 原文地址:https://www.cnblogs.com/zxy-come-on/p/12594693.html
Copyright © 2011-2022 走看看