공부 기록

[프로젝트] Entity ↔ DTO 변환 계층 선택 본문

프로그래밍/프로젝트

[프로젝트] Entity ↔ DTO 변환 계층 선택

I'm_ 2024. 1. 30. 16:00

✅ 들어가며

프로젝트의 Food도메인에서 Entity와 DTO의 변환 계층으로 Service계층을 선택하였다. 선택의 이유는,

  1. Controller계층은 요청을 받고 메서드를 호출하여 그 결과를 응답하는 역할을 하므로 Entity와 DTO의 변환 코드는 Service에 있어야 한다고 생각하였고,
  2. Service에서 유효성 검사를 하게 될 것이라고 생각했기 때문이다.

앞으로 식당, 주문 도메인을 진행하면서도 Entity와 DTO 변환을 해야하므로 어느 계층에서 변환을 하는 것이 좋을지 고민해보았다.

 

✅ Entity와 DTO의 변환 계층(Layer)

 

여러 블로그 글을 읽어 보았을 때 Entity와 DTO 변환을 Controller에서 하는 방법, Service에서 하는 방법은 각각의 장단점이 있고 상황에 따라 유연하게 선택해야 하는 것 같다. 

아직 큰 프로젝트를 진행해보지 않은 나로서는 우선 Service 계층에서 변환을 진행해보고자 한다.


📚 참고 자료

 

[Spring boot] DTO <-> Entity 간 변환, 어느 Layer에서 하는게 좋을까?

Spring Boot 개발 중 학습이 필요한 내용을 정리하고,트러블 슈팅 과정을 기록하는 포스팅입니다.

velog.io