본문 바로가기

카테고리 없음

DTO와 entity를 분리해야하는 이유

https://mangkyu.tistory.com/192

 

[Spring] 엔티티(Entity) 또는 도메인 객체(Domain Object)와 DTO를 분리해야 하는 이유

개발을 하다 보면 API의 요청이나 응답을 처리할 때 또는 다른 계청으로 넘기는 파라미터가 너무 많은 시점에 별도의 DTO를 생성해야 하나 고민을 하는 시점이 생깁니다. 개인적으로는 간단한 애

mangkyu.tistory.com

 

내용이 구체적이고 좋다. 다른 글도 읽어보자.

 

먼저 컨트롤러에서 엔티티를 반환하는 것은 절대로 하면 안된다.

엔티티가 바뀔수 있다. -> 엔티티가 바뀌면 API 반환형식도 바뀐다. -> 웹은 빠르게 대응한다고 쳐도 앱은 동작을 안하게 된다. API는 한번 바뀌면 해당 API를 사용하고 있는 서비스가 모두 변경되어야 하기 때문에 절대로 바뀌면 안된다. 그래서 엔티티는 바뀌어도 되도록 DTO를 반환해서 엔티티 변경에 유연성을 줘야한다.