
Spring & Springboot
[스프링/Spring] DTO는 왜 써야 하나?
1. 고민? DTO(Data Transfer Object)란 계층간 데이터 교환을 위해 사용하는 객체입니다. 아래 코드를 보면서 DTO는 왜 필요한가에 대해 생각해보겠습니다. * 실제 간단한 엔티티 설계의 일부입니다. 위 예제 코드는 Posts라는 엔티티를 생성하는 코드입니다. 맨 처음에 PostsSaveReqeustDto라는 Dto 객체를 빌더 패턴으로 생성하고 Dto를 컨트롤러에게 던져줍니다. 컨트롤러는 해당 Dto를 다시 Service에게 넘겨주고, Service 딴에서 JPA를 이용하여 생성된 객체를 저장합니다. "그런데 DTO와 Entity는 거의 똑같은 것 같은데, 왜 변환을 해서 사용해야 하며, 그렇다면 언제 DTO가 필요할까요?" 2. 언제, 왜 DTO를? 몇 가지 책과 기술 블로그를 참고..