• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

Dto

23.03.25 16:46 작성 조회수 428

0

위강의에 MemberDto에 만약 address필드까지 추가해야한다면 MemberDto 리스트를 만들때

List<MemberDto> collect = findMembers.stream()
                .map(m -> new MemberDto(m.getName(),m.getAddress()))
                .collect(Collectors.toList()); 

위와 같이 해준다면 MemberDto에서의 address와 findMembers에서의 address가 같은 주소값을 참조하고 있어 상황에 따라 뜻하지 않는 에러가 발생할 수 있다고 생각하는데 MemberDto에서 address 객체를 아예 새로 만드는 것이 더 좋을까요?? 현업에서는 어떻게 사용하는지 궁금합니다!

답변 1

답변을 작성해보세요.

0

y2gcoder님의 프로필

y2gcoder

2023.03.25

안녕하세요, dlwogns3413 님. 공식 서포터즈 y2gcoder 입니다.

보통은 조회성 데이터로 내려보내줄 데이터들은 엔티티에 사용한 클래스들과 분리해주는 게 안전하다고 생각해서 Address도 새로운 dto로 매핑하는 편입니다. 본인 혼자만 담당하고 있고 실수하지 않을 것 같다고 생각하면 그대로 쓰셔도 됩니다. 트레이드오프를 잘 따져서 선택하시면 좋겠습니다 :)

감사합니다.