map转实体工具类

Posted sunqingwei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了map转实体工具类相关的知识,希望对你有一定的参考价值。

package cst.spmBase.util;

import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.commons.beanutils.BeanUtils;
/**
* 将map转换为实体
* @author Administrator
*
*/
public class ConvertMapToDomainUtil {
/**
* @Title: assemble
* @Description: List<Map<String, Object>> 转为 List<Object>
* @param: @param objs
* @param: @param targetClass
* @param: @return
* @param: @throws IllegalAccessException
* @param: @throws InvocationTargetException
* @param: @throws InstantiationException
* @return: List<Object>
* @throws
* @author gaoxp
*/
public static List<Object> assemble(List<Map<String, String>> objs, Class<?> targetClass) throws IllegalAccessException, InvocationTargetException, InstantiationException {
List<Object> list=new ArrayList<Object>();
for (Map<String, String> map : objs) {
Object obj=assemble(map, targetClass);
list.add(obj);
}
return list;
}

/**
* @Title: assemble
* @Description: Map<String, Object> 转为 Object
* @param: @param objs
* @param: @param targetClass
* @param: @return
* @param: @throws IllegalAccessException
* @param: @throws InvocationTargetException
* @param: @throws InstantiationException
* @return: Object
* @throws
* @author gaoxp
*/
public static Object assemble(Map<String, String> objs, Class<?> targetClass) throws IllegalAccessException, InvocationTargetException, InstantiationException {
if (null == objs) {
return null;
}
Object target = targetClass.newInstance();
if (target != null) {
for(Map.Entry<String, String> e : objs.entrySet()) {
if(null!=e.getValue()){
BeanUtils.copyProperty(target, e.getKey(), e.getValue());
}
}
}
return target;
}
/**
* @date 2017年12月13日
* @author gxp
* @param objs
* @param targetClass
* @return
* @throws IllegalAccessException
* @throws InvocationTargetException
* @throws InstantiationException
* 描述:将相应map转换为制定类型的实体
*/
public static Object anotherAssemble(Map<String, Object> objs, Class<?> targetClass) throws IllegalAccessException, InvocationTargetException, InstantiationException {
if (null == objs) {
return null;
}
Object target = targetClass.newInstance();
if (target != null) {
for(Map.Entry<String, Object> e : objs.entrySet()) {
if(null!=e.getValue()){
BeanUtils.copyProperty(target, e.getKey(), e.getValue());
}
}
}
return target;
}
}

使用方法

Map<String, Object> returnMap ;

XXXX  xxxx= (XXXX) ConvertMapToDomainUtil
.anotherAssemble(returnMap, XXXX.class);























































































以上是关于map转实体工具类的主要内容,如果未能解决你的问题,请参考以下文章

map转Bean对象实用工具类(驼峰处理,时间格式等其他类型处理)

学习笔记 - MapStruct 映射工具

学习笔记 - MapStruct 映射工具

java 实体对象与Map之间的转换工具类(自己还没看)

Map工具类

Java工具类 -- map转bean各bean转map