动态加载和创建Class对象
String str = ABC.class;
Class t = Class.forName(str);
t.newInstance();
与下面new对象是一样的效果
ABC abc= new ABC();
前者是使用类加载机制,后者是创建一个新类
实例介绍
/**
* 复制源对象属性到目标对象
*
* @param obj
* @param clazz
* @param ignoreProperties String... 表示的是一个可变长度的参数列表,相当于一个数组
* @param <T>
* @return
*/
private <T> T objToBeanVo(Object obj, Class<T> clazz, String... ignoreProperties) {
try {
T t = (T) Class.forName(clazz.getName()).newInstance();
BeanUtils.copyProperties(obj, t, ignoreProperties);
return t;
} catch (Exception e) {
log.error("objToBeanVo error:" + e.getMessage());
e.printStackTrace();
}
return null;
}