수다닷컴

  • 해외여행
    • 괌
    • 태국
    • 유럽
    • 일본
    • 필리핀
    • 미국
    • 중국
    • 기타여행
    • 싱가폴
  • 건강
    • 다이어트
    • 당뇨
    • 헬스
    • 건강음식
    • 건강기타
  • 컴퓨터
    • 프로그램 개발일반
    • C언어
    • 비주얼베이직
  • 결혼생활
    • 출산/육아
    • 결혼준비
    • 엄마이야기방
  • 일상생활
    • 면접
    • 취업
    • 진로선택
  • 교육
    • 교육일반
    • 아이교육
    • 토익
    • 해외연수
    • 영어
  • 취미생활
    • 음악
    • 자전거
    • 수영
    • 바이크
    • 축구
  • 기타
    • 강아지
    • 제주도여행
    • 국내여행
    • 기타일상
    • 애플
    • 휴대폰관련
  • 프로그램 개발일반
  • C언어
  • 비주얼베이직

[내용추가] Java reflect를 통한 List에 동적으로 구성되는 Generic 값들을 복사하는 방법이 있을까요?

돌삥

2023.05.09

서로 다른 VO 사이에 데이터를 복사하려 합니다.
그런데 List 에 동적으로 구성되는 Generic입니다. List 안에 객체는 동일한 set/getter 메소드로 구성되어 있구요.
단일 객체의데이터를 복사하는 건 성공했는데요. List 안에 동적으로 구성되는 Generic을 복사 하려 합니다.
방법이 있을까요? 참고 소스 올려 봅니다. 고수님들의 조언 부탁드립니다.

classTarget{
protected StringRPT_CNT;
protected ListCOMMON common;

public String getRPT_CNT() {
return rptCNT;
}
public void setRPT_CNT(String value) {
this.rptCNT = value;
}
public ListCOMMON getCOMMON() {
if (common == null) {
common = new ArrayListCOMMON();
}
return this.common;
}
public void setCOMMON(ListCOMMON common) {
this.common = common;
}
}

public class COMMON {
protected String CD;
protected String NM;

public String getCD() {
return cd;
}
public void setCD(String value) {
this.cd = value;
}
public String getNM() {
return nm;
}
public void setNM(String value) {
this.nm = value;
}
}

class Source {
public String getCD() {
return cd;
}
public void setCD(String value) {
this.cd = value;
}
public String getNM() {
return nm;
}
public void setNM(String value) {
this.nm = value;
}
}

구조는 대략적으로 이렇게 구성이 되어 있습니다.
Source 와 Target은 정적 객체가 아니라동적 객체입니다.
항상 다른 객체가 넘어 옵니다.

함수로 ListSource 와 Target 을 넘겨 ListSource의 값들을 Target의 ListCOMMON 의 값으로 복사하는 방식입니다.

가능할까요? 혹 설명이 부족한 부분이 있다면 말씀해 주시면 좀더 자세히 설명 올려 놓겠습니다.
고수님들의 조언 다시한번 부탁드립니다.내용을 좀더 보충하도록 하겠습니다.
소스로 설명을 좀 해보도록 하겠습니다.

ListSource src = 쿼리를 통해리스트 값이 리턴되어 할당됩니다.;
Target trg = new Target();

copyObject ( trg, src);

public void copyObject ( Object target , Object source )
{
1. target 의 변수중 List 타입인 변수를 찾습니다.(참고로 내부 구조상 List 타입은 무조건 하나입니다.)
2. List 변수의 Generic 타입을 확인합니다.
3. 새로운 ListGeneric 으로 변수를 생성합니다.
4. source의 Generic 타입을 확인합니다.
5. source의 size 만큼 for 을 돕니다.
5-1. source에 할당되어 있는 Generic 타입의 객체를 받아옵니다.
5-2. source의 Generic 객체를 2번에서 확인한 Generic 타입의 객체에 복사를 합니다.
( 이때 또한 Reflect 를 통해 setter/getter 메소드로 값을 세팅해서 복사를 합니다. - 구현됨 )
5-3. 3번에 생성됬던 변수에 add를 합니다.
6. 3번의 생성된 LIST 객체를 target의 1번에 찾은 변수에 할당합니다.
}간단히 말씀드리면 쿼리 결과인 List 객체를 다른 객체의 List 객체에 복사하고 싶은데 객체 타입이 전혀 다릅니다.
하지만 내부의 변수명이 같기에 reflect 를 통해 복사를 하려고 합니다.

이걸로 설명이 좀 될지 모르겠네요. 고수님들의 조언 기다리겠습니다...ㅜㅜ

신청하기





COMMENT

댓글을 입력해주세요. 비속어와 욕설은 삼가해주세요.

번호 제 목 글쓴이 날짜
2700505 activex를 비쥬얼6.0으로 만들었는데요 비스타 배포시에 안되서 질문드립니다 (3) 참이 2025-07-05
2700452 c언어에서... 자료형 구분.... (3) 시내 2025-07-05
2700422 버전에 관해 질문 라온제나 2025-07-04
2700393 mysql이 갑자기!!!!!!!!!!!!!!!에러가;; (2) 소미 2025-07-04
2700359 3.0 ) SimpleButton 상태 강제 변경 (3) 희선 2025-07-04
2700304 ie8 전용핵 문의 (3) 여자 2025-07-03
2700281 이런경우 어떻게 코딩해야 표준에 따르는건가요? (6) 늘솜 2025-07-03
2700230 질문이여 ! 뿡뿡몬 2025-07-03
2700205 액션스크립트책 좀 추천해주세요. (10) 화이트캣 2025-07-02
2700173 자바 소스인데 어떤게 에러인지..? (1) 호빵녀 2025-07-02
2700142 하단이 붙어있는 가변 레이아웃구조 질문드립니다. 이플 2025-07-02
2700089 이미지를 사다리꼴로 비틀게 하는 액션코드가 있나요? (4) 여름 2025-07-01
2700033 배경에 그라데이션을 넣으려고 하는데요.. (4) 화이티 2025-07-01
2700005 [질문] TextField 객체의 실제 높이 알아오는 방법 ? 천사의눈물 2025-07-01
2699978 FileReferenceList를 이용하여 업로드시 자꾸 실행속도가 느리다는 팝업이... (10) 데이비드 2025-06-30
2699944 자바스크립트가 많은 사이트는... (6) 희나리 2025-06-30
2699918 브라우저마다 다른 input과 텍스트 정렬 (3) 늘봄 2025-06-30
2699887 동적텍스트를 그래픽으로?? (2) 족장 2025-06-30
2699862 scope넣기 (1) 아인 2025-06-29
2699835 exe로 만드는 방법을....알려주세요.. (5) 방방 2025-06-29
<<  이전  1 2 3 4 5 6 7 8 9 10  다음  >>

수다닷컴 | 여러분과 함께하는 수다토크 커뮤니티 수다닷컴에 오신것을 환영합니다.
사업자등록번호 : 117-07-92748 상호 : 진달래여행사 대표자 : 명현재 서울시 강서구 방화동 890번지 푸르지오 107동 306호
copyright 2011 게시글 삭제 및 기타 문의 : clairacademy@naver.com