인프런 커뮤니티 질문&답변

dlwogns3413님의 프로필 이미지
dlwogns3413

작성한 질문수

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

회원 조회 API

Dto

작성

·

477

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

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

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

감사합니다.

dlwogns3413님의 프로필 이미지
dlwogns3413

작성한 질문수

질문하기