java 将map转为实体类

 1 public static <T> T map2Object(Map<String, Object> map, Class<T> clazz) {
 2
 3         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 4
 5         if (map == null) {
 6             return null;
 7         }
 8         T obj = null;
 9         try {
10             // 使用newInstance来创建对象
11             obj = clazz.newInstance();
12             // 获取类中的所有字段
13             Field[] fields = obj.getClass().getDeclaredFields();
14             for (Field field : fields) {
15                 int mod = field.getModifiers();
16                 // 判断是拥有某个修饰符
17                 if (Modifier.isStatic(mod) || Modifier.isFinal(mod)) {
18                     continue;
19                 }
20                 // 当字段使用private修饰时,需要加上
21                 field.setAccessible(true);
22                 // 获取参数类型名字
23                 String filedTypeName = field.getType().getName();
24                 // 判断是否为时间类型,使用equalsIgnoreCase比较字符串,不区分大小写
25                 if (filedTypeName.equalsIgnoreCase("java.util.date")) {
26
27                     String datetimestamp = (String) map.get(field.getName());
28                     if (datetimestamp.equalsIgnoreCase("null")) {
29                         field.set(obj, null);
30                     } else {
31                         field.set(obj, sdf.parse(datetimestamp));
32                     }
33                 } else {
34                     field.set(obj, map.get(field.getName()));
35                 }
36             }
37         } catch (Exception e) {
38             e.printStackTrace();
39         }
40         return obj;
41     }

原文地址:https://www.cnblogs.com/wangjinyu/p/10967888.html

时间: 2024-07-29 04:37:54

java 将map转为实体类的相关文章

JAVA中 Map转换实体类对象简单实现 JSON

原文链接:https://blog.csdn.net/qq_23140197/article/details/86503875   (侵删) 开发的过程中往往依赖的表过多直接按Map来传递数值,某些场景需要把Map转换为实体类,这里贴一个最简洁的方法,依赖阿里的FastJSon. maven引入 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId>

java中循环遍历实体类的属性和数据类型以及属性值

package com.walkerjava.test; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.Date; /*** * 遍历实体类的属性和数据类型以及属性值 * * @author LiBaozhen * @date 2013-1-4 上午10:25:02 * @co

Java中entity(实体类)的写法规范

在日常的Java项目开发中,entity(实体类)是必不可少的,它们一般都有很多的属性,并有相应的setter和getter方法.entity(实体类)的作用一般是和数据表做映射.所以快速写出规范的entity(实体类)是java开发中一项必不可少的技能. 在项目中写实体类一般遵循下面的规范: 1.根据你的设计,定义一组你需要的私有属性. 2.根据这些属性,创建它们的setter和getter方法.(eclipse等集成开发软件可以自动生成.具体怎么生成?请自行百度.) 3.提供带参数的构造器和

java中如何遍历实体类的属性和数据类型以及属性值

1 package com.walkerjava.test; 2 3 import java.lang.reflect.Field; 4 import java.lang.reflect.InvocationTargetException; 5 import java.lang.reflect.Method; 6 import java.util.Date; 7 8 /*** 9 * 遍历实体类的属性和数据类型以及属性值 10 * 11 * @author LiBaozhen 12 * @dat

【java】分页查询实体类

package com.dmsd.itoo.tool.pageModel; import java.io.Serializable; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.persistence.Transient; public class PageEntity<T> implements Serializable{ /** * */ private static

java socket之传输实体类对象

一.TCP编程     TCP协议是面向连接的.可靠地.有序的,以字节流的方式发送数据.java实现TCP通信依靠2个类:客户端的Socket类和服务器端的ServerSocket类. 基于TCP通信的Socket模型如下: Socket通信的实现步骤如下: 1.    创建服务器端Socket:ServerSocket和客户端Socket:Socket: 2.    打开连接到Socket的InputStream/OutputStream; 3.    按照协议对Socket进行读写操作: 4

Java 接口自动化系列--实体类之entity封装

实体包entity下面有4个类,主要存放java对象,每个类必须有私有属性,空参构造,get set方法 具体excel中数据信息见---工具类excel文章 1.API类 解析excel中接口信息的表头信息,需要定义参数变量,get set方法 @Excel是使用了easypoi对Excel进行读写,需要导入依赖 <dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-annotat

java中的java.util.Map的实现类

1.HashMap 2.Hashtable 3.LinkedHashMap 4.TreeMap

java中map和对象互转工具类的实现示例

在项目开发中,经常碰到map转实体对象或者对象转map的场景,工作中,很多时候我们可能比较喜欢使用第三方jar包的API对他们进行转化,而且用起来也还算方便,比如像fastJson就可以轻松实现map和对象的互转,但这里,我想通过反射的方式对他们做转化,也算是对反射的学习和研究吧: 1.map转对象: 主要思路,将map中的key-value取出来,然后和给定的对象去匹配,为了使工具方法更具通用性,直接通过反射的方式将给定对象的属性获取到,然后调用反射相关的API和map中的key-value进