import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.beanutils.BeanUtils;
public class ClassUtil {
/**
* 将一种类型的List,转换为另外一种类型的List
* @param srcList
* @param destType
* @return
*/
public static List<Object> convertBeanList(List<Object> srcList,Class<?> destType)
{
List<Object> list=new ArrayList<Object>();
for(Object obj :srcList)
{
Object destObj=convertBean(obj,destType);
if(destObj!=null)
{
list.add(destObj);
}
}
return list;
}
/**
*将一种类型的对象,转换为另外一种类型的对象,并拷贝里面的同名属性
* @param src
* @param type
* @return
*/
public static Object convertBean(Object src,Class<?> type)
{
Object desObj=null;
try
{
desObj=type.newInstance();
copyBean(src,desObj);
}catch(Exception e)
{
Logger.logException(e);
}
return desObj;
}
/**
* 拷贝bean中的同名属性
* @param src
* @param dest
*/
public static void copyBean(Object src,Object dest)
{
try
{
BeanUtils.copyProperties(dest, src);
}catch(Exception e)
{
Logger.logException(e);
}
}
public static Object getPropertyValue(Object src,String property)
{
Object result=null;
try
{
Class cls=src.getClass();
property=property.substring(0,1).toUpperCase()+property.substring(1,property.length());
Method method=cls.getMethod("get"+property,null);
if(method!=null)
{
result=method.invoke(src, null);
}
}catch(Exception e)
{
Logger.logException(e);
}
return result;
}
}
JAVA类型转换
最新推荐文章于 2022-08-09 16:00:13 发布