Spring Boot에서 MVC 아키텍처 흐름

발행: (2026년 5월 5일 PM 05:05 GMT+9)
3 분 소요
원문: Dev.to

Source: Dev.to

Cover image for MVC Architecture Flow in Spring Boot

MVC란?

MVC는 다음의 약자입니다:

  • M → Model(모델)
  • V → View(뷰)
  • C → Controller(컨트롤러)

관심사의 분리를 통해 코드를 조직화하는 디자인 패턴입니다. Spring Boot에서는 MVC가 웹 애플리케이션을 깔끔하게 구조화하는 데 도움을 줍니다.

Spring Boot의 MVC는 애플리케이션을 Model, View, Controller 로 구분합니다:

  • Model 은 데이터와 비즈니스 로직을 담당합니다.
  • View 는 사용자 인터페이스를 표시하는 역할을 합니다.
  • Controller 는 다리 역할을 하여 사용자 요청을 받고 Model과 View 사이를 조정합니다.

요청이 들어오면 Controller가 이를 처리하고 Model과 상호작용한 뒤 결과를 View에 전달합니다. 이러한 분리는 코드를 체계적으로 유지하고, 유지보수성을 높이며, 확장성·가독성·개발 효율성을 향상시킵니다.

MVC를 사용하는 이유

MVC 없이 모든 코드(로직 + UI + 데이터)가 뒤섞이면 → 엉망이 됩니다.

MVC를 적용하면:

  • ✅ 코드가 깔끔하고 체계적입니다
  • ✅ 유지보수·디버깅이 쉬워집니다
  • ✅ 팀 개발을 지원합니다
  • ✅ 재사용 가능한 컴포넌트를 만들 수 있습니다

MVC 구성 요소

Model (데이터 계층)

데이터와 비즈니스 로직을 나타냅니다. 일반적으로 포함되는 요소:

  • 엔티티 클래스
  • 데이터베이스 연동

예시:

class Student {
    int id;
    String name;
}

View (UI 계층)

사용자가 보는 화면 👀. 다음과 같은 형태가 될 수 있습니다:

  • HTML
  • JSP
  • Thymeleaf

예시:

## Welcome Student

Controller (요청 처리기)

  • 사용자 요청을 처리합니다
  • Model과 View를 연결합니다

예시:

@RestController
public class StudentController {

    @GetMapping("/student")
    public String getStudent() {
        return "Hello Student";
    }
}

MVC flow diagram

0 조회
Back to Blog

관련 글

더 보기 »