/**
* @description
* <pre>
* source list 중 target list와 항목명이 같은 데이터를 복사
* </pre>
* @param srcList : source list
* @param trgtList : target list
* @param pTargetType : target type
*/
public static <E, T> void copyData(List<E> srcList, List<T> trgtList, Class<T> pTargetType) {
try {
for( E src : srcList) {
T trgt = (T) pTargetType.newInstance();
BeanUtils.copyProperties(src, trgt);
trgtList.add(trgt);
}
} catch (BeansException be) {
logger.debug(be.getMessage(), be);
} catch (Exception e) {
logger.debug(e.getMessage(), e);
}
}
사용예)
List<TrgtVo> trgtList = new ArrayList<TrgtVo>();
List<SrcVo> srcList = svc.getList(paramVo);
ErpUtils.copyData(srcList, trgtList, TrgtVo.class);관련글 : 서로 다른 유형의 object 복사
