一)背景
主要是为了实现数据之间的转换,方便数据展示。
使用场景:当数据可能是List类型,可能会需要转换成具体的List格式。
二)List转换成List
功能:传入List数据和需要转换的Class对象,返回一个List数据集合
实现方式:Java反射方式,使用的是构造器的方式
缺点:实体类中必须有无参数构造器,有参数构造器,且构造器参数的顺序和数据的顺序必须一致。如果数据格式有变化,需要重新编写一个实体类的构造器
实现源码:
package com.oysept.utils;
import java.lang.reflect.Constructor;
import java.util.ArrayList;
import java.util.List;
/**
* List转换成一个List
* @author ouyangjun
*/
public class ObjectToBeanUtils {
/**
* 把List转换成List
*/
public static List objectToBean(List objList, Class clz) throws Exception{
if (objList==null || objList.size()==0) {
return null;
}
Class>[] cz = null;
Constructor>[] cons = clz.getConstructors();
for (Constructor> ct : cons) {
Class>[] clazz = ct.getParameterTypes();
if (objList.get(0).length == clazz.length) {
cz = clazz;
break;
}
}
List list = new ArrayList();
for (Objec