Spring Framework (2)

주빈·2022년 6월 22일
0

framework

목록 보기
3/11
post-thumbnail

오늘은 spring framework의 동작 구조를 알아보자.

📘 Spring의 동작 구조

스프링의 MVC에 대해 알아보자.

📜 Spring MVC

  • Spring Framework 에서는 클라이언트의 화면을 표현하기 위한 View와 서비스를 수행하기 위한 개발 로직 부분을 나누는 MVC2 패턴을 지원한다.
  • Model, View, Controller 사이의 의존 관계를 DI 컨테이너에서 관리하여 유연한 웹 애플리케이션을 쉽게 구현 및 개발할 수 있다.

✏ Spring MVC 요청 처리 과정

Spring MVC의 구성 요소를 먼저 살펴보자.

구성요소설명
DispatcherServlet클라이언트의 요청(Request)을 전달 받고, 요청에 맞는 컨트롤러가 리턴한 결과 값을 View에 전달하여 알맞은 응답(Response)을 생성한다.
HandlerMapping클라이언트의 요청 URL을 어떤 컨트롤러가 처리할지 결정한다.
Comtroller클라이언트의 요청을 처리한 뒤, 결과를 DispatcherServlet에게 리턴한다.
ModelAndView컨트롤러가 처리한 결과 정보 및 뷰 선택에 필요한 정보를 담는다.
ViewResolver컨트롤러의 처리 결과를 생성할 View를 결정한다.
View컨트롤러의 처리 결과 화면을 생성한다.
JSP나 Velocity 템플릿 파일 등을 View로 사용을 한다.
Business 로직어떤 특정한 값을 얻기 위해서 데이터의 처리를 수행하는 응용프로그램의 일부로 백엔드에서 일어나는 각종 처리를 일컫는 말이다.

그림으로 살펴보면

  • (1) 웹 브라우저 상의 클라이언트가 DispatcherServlet으로 요청을 보낸다.

  • (2) DispatcherServlet은 클라이언트의 요청을 HandlerMapping으로 위임하여 어떤 컨트롤러가 처리할지 정한다.

  • (3), (4), (5) 어떤 컨트롤러가 처리할지 정해지면 해당하는 컨트롤러는 Business 로직을 실행하여 요청을 처리한 뒤, 결과를 DispatcherServlet에게 리턴한다.

  • (6) 컨트롤러의 처리 결과를 생성할 View 결정하여 화면을 생성한다.

  • (7) 이러한 과정을 거쳐 요청에 맞는 알맞은 응답을 생성하여 리턴한다.

profile
누구에게나 필요한 개발자가 꿈

0개의 댓글