MVC (Model - View - Controller) 패턴의 개념

" Business logic과 Presentation logic을 분리하기 위해"

  • MVC 패턴을 사용하면, 사용자 인터페이스로부터 비즈니스 로직을 분리하여 애플리케이션의 시각적 요소나 그 이면에서 실행되는 비즈니스 로직을 서로 영향없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있음.
Model - DB와 연동하여 사용자가 입력한 데이터나 사용자에게 출력할 데이터를 다루는 일
- 여러 개의 데이터 변경 작업을 하나의 작업으로 묶는 트랜잭션을 다루는 일
- Domain, Service
View - 모델이 처리한 데이터나 그 작업결과를 가지고 사용자에게 출력할 화면을 만드는 일
- HTML, JSP
Controller - 클라이언트의 요청을 받았을 때 그 요청에 대해 실제 업무를 수행하는 모델 컴포넌트를 호출하는 일
- 모델이 업무 수행을 완료하면 그 결과를 가지고 화면을 생성하도록 뷰에게 전달하는 일
- Servlet, JSP

Spring MVC의 주요 구성요소

구성요소 설명
DispatcherServlet 클라이언트의 요청을 받아서 Controller에게 클라이언트의 요청을 전달하고 리턴한 결과값을 View에게 전달해 알맞은 응답을 생성 (web.xml)
Handler Mapping URL과 요청 정보를 기준으로 어떤 핸들러 객체를 사용할지 결정하는 객체
Controller 클라이언트의 요청을 처리한 뒤, Model을 호출하고 그 결과를 DispatcherServlet에게 알려줌
Model and View Controller가 처리한 데이터 및 화면에 대한 정보를 보유한 객체
View Controller가 처리 결과 화면에 대한 정보를 보유한 객체
ViewResolver Controller가 리턴한 뷰 이름을 기반으로 Controller 처리 결과를 생성할 뷰를 결정

[출처] https://wellbell.tistory.com/137

 

'Web > Spring' 카테고리의 다른 글

[배경] Maven  (0) 2021.07.27
[배경] Template Engine  (0) 2021.07.27
[배경] Spring Security  (0) 2021.07.27
[배경] Spring 실행 순서  (0) 2021.07.27
[배경] Servlet  (0) 2021.07.27

+ Recent posts