[Spring] MVC 패턴과 DTO

윤짱·2025년 10월 28일

Spring

목록 보기
4/18
post-thumbnail

MVC 패턴

프로그래밍을 할 때 아키텍처를 설계하는 디자인 패턴 중 하나로서 Model, View, Controller를 사용하여 설계하는 방식이다.

Model

데이터를 가진 객체로, 어플리케이션의 정보 및 데이터를 의미한다.

  • View, Controller의 어떤 정보도 몰라야 한다.
  • 재사용이 가능해야 하고, 다른 인터페이스에서도 변경되면 안 된다.

View

UI 등의 시각적 요소를 의미한다.

  • 모델이 가진 정보를 따로 저장하면 안 된다.
  • 다른 구성 요소(Model,Controller)에 대해 몰라야 한다.
  • 변경 시 변경 통지에 대한 처리 방법을 구현해야 한다.

Controller

Model과 View를 연결한다.

  • Model과 View에 대해 알아야 한다.
  • Model과 View의 변경을 모니터링 해야 한다.

DTO

Data Transfer Object로서, 계층간 데이터 교환을 위해 사용하는 객체이다.

DTO를 사용하지 않을 경우

  1. Model의 모든 속성이 노출될 수 있다.
  2. UI 계층에서 Model 메서드를 호출하고 변경할 수 있다.
  3. View의 요구사항 변화가 Model에 영향을 끼치기 쉽다.

필요성

위와 같은 문제를 발생시키지 않기 위해 필요한 데이터만 선택적으로 담아 DTO를 만들어 클라이언트와 서버가 서로에게 데이터를 전달하는 것이다.

profile
바르게 살자...

0개의 댓글