• 카테고리

    질문 & 답변
  • 세부 분야

    기타 (개발 · 프로그래밍)

  • 해결 여부

    미해결

ModelMapper의 리플렉션에 관해 문의입니다.

22.04.27 23:33 작성 조회수 191

0

기선님 강의 잘 보고 있습니다.
[프로토타입 패턴 2부 - 패턴 적용하기] ModelMapper를 사용하다가 리플렉션에 관한 문의인데요. 제가 리플렉션에 대해 깊게 알지 못해 문의를 드리는거 일 수 있어서 양해 부탁드리겠습니다. ( _ _)
 
ModelMapper에서 리플렉션 진행 할 때 필드 네이밍이 일치하지 않아도 가져오는게 조금 신기해서 문의드립니다.
 
GithubRepository githubRepository = new GithubRepository();
githubRepository.setUser("dnom");
githubRepository.setName("live-study");

GithubIssue githubIssue = new GithubIssue(githubRepository);
githubIssue.setId(1);
githubIssue.setTitle("Issue : JVM Memory 부족");

ModelMapper modelMapper = new ModelMapper();
GithubIssueData githubIssueData = modelMapper.map(githubIssue, GithubIssueData.class);
 
public class GithubIssueData {

private int id;
private String title;
private String repositoryUser;
private String repositoryName;

... 생략
}
public class GithubIssue implements Cloneable{

private int id;
private String title;
private GithubRepository githubRepository;

... 생략
}
public class GithubRepository {

private String User;
private String Name;
... 생략
}
GithubIssue에서 githubRepository로 필드명을 지어두었음에도 불구하고
복사한 GithubIssueData의 repositoryUser, repositoryName 필드에 어떻게 매핑되어 값이 들어가게 되는 걸까요?
GithubIssueData의 필드명이 githubRepositoryUser, githubRepositoryName으로 정확히 지어야만 들어갈걸로 예상했거든요.
ModelMapper의 map 메소드를 파헤쳐보다가 모르겠어서 문의드립니다. ㅠ
 
 
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

답변 1

답변을 작성해보세요.

1

오.. 저도 저런게 되는지 몰랐습니다. 앞에 github이라는게 붙어있어도 된다면 뭔가 ModelMapper 쪽에서 공통적인 prefix를 무시하는 기능 같은데 있는게 아닐까 생각이 드네요.