소프트웨어 설계 패턴 ( MVC)

hee·2025년 6월 25일

Spring

목록 보기
1/4

📌 기본 MVC 구성
1. Model

  • 애플리케이션의 핵심 비즈니스 데이터와 로직을 담은 영역
  • 도메인 객체 또는 Entity 클래스가 위치
  1. View
  • 사용자에게 데이터를 보여주는 부분 (ex) JSON
  • Controller로 받은 데이터를 시각적으로 표현
  1. Controller
  • 사용자에게 요청을 받아서 처리하고, 응답을 반환함
  • 주로 Service를 호출해서 비즈니스 로직을 수행

-> 여기까지가 MVC 설계 패턴
but, 스프링과 같은 현대 프레임워크에서는 구조를 더욱 세분화해서 유지보수성과 확장성을 높임.
Service Repository DTO Domain Exception 을 알아볼 것.

  1. Service
  • 비즈니스 로직을 담당
  • Controller, Repository 사이의 중간다리 연결
  • 트랜잭션 처리, 여러 Repository 조합 호출 등의 로직 수행
  1. Repository
  • DB와 직접적으로 통신함 (DAO 역할)
  1. DTO
  • Data Transfer Object
  • 데이터 전달용 객체
  • 주로 Controller <-> Service 사이에서 사용
  • Domain과 분리해 API 요청/응답용 포맷을 정리함
  • Validation 이나 보안 목적에서도 중요
  1. Domain(또는 Entity)
  • 애플리케이션의 핵심 객체
  • 불변성, 도메인 규칙을 중심으로 구성
  1. Exception
  • 예외를 세분화해서 정리
  • 예외를 명확하게 분리하여 에러메세지 처리와 로깅을 쉽게 함

[Controller]
↓ 요청 전달 / 응답 반환
[Service]
↓ 비즈니스 로직 처리
[Repository]
↓ DB 접근
[Domain]
↔ DB 매핑

0개의 댓글