서로 다른 유형의 List 복사

 /**
  * @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 복사

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다