Spring MVC Architecture

uudean·2023년 6월 11일
0

Spring

목록 보기
3/13

Spring MVC란?

  • Spring의 모듈 중 웹 계층을 담당하는 모듈 중 서블릿 API를 기반으로 클라이언트의 요청을 처리하는 모듈이 있는데, 이 모듈의 이름을 Spring-webmv라 한다.

    서블릿(Servlet)이란?

    • 클라이언트의 요청을 처리하도록 특정 규약에 맞게 자바 코드로 작성하는 클래스 파일

Model

  • Spring MVC 기반의 웹 애플리케이션이 클라이언트의 요청을 받으면 요청사항을 처리하기 위한 작업을 함. 이렇게 처리한 작업의 결과 데이터를 클라이언트에게 응답으로 돌려주려 하는데, 이때 클라이언트에게 응답으로 돌려주는 작업의 처리 결과데이터를 Model이라 한다.

    클라이언트의 요청 사항을 구체적으로 처리하는 영역을 서비스 계층(Service Layer)라 하며, 실제로 요청사항을 처리하기 위해서 Java코드로 구현한 것을 비즈니스 로직 (Business Logic) 이라 한다.

View

  • 모델 데이터를 이용해 웹 브라우저 같은 클라이언트 애플리케이션의 화면에 보이는 리소를 제공하는 역할

    View의 다양한 기술

    • HTML의 출력
    • PDF , Excel 등의 문서 형식으로 출력
    • XML, JSON 등 특정 형식의 포맷으로 변환
      모델 데이터를 특정 프로토콜 형태로 변환해서 데이터를 클라이언트에 전송
      특정 형식의 데이터만 전송하고, 이 데이터를 기반으로 프론트엔드에서 HTML을 만드는 방식

      JSON (JavaScript Object Notation)
      클라이언트 애플리케이션과 서버 애플리케이션간 주고 받는 데이터형식
      XML 보다 가볍고 복잡하지 않음
      JSON의 기본 포맷
      {"속성" : "값"}

Controller

  • 클라이언트 측의 요청을 직접적으로 전달받는 엔드포인트로써 Model과 View의 중간 상호작용을 해주는 역할

Spring MVC의 동작 방식과 구성요소

DispatcherServlet의 역할
애플리케이션의 가장 앞단에 배치되어 다른 구성요소들과 상호작용하여 클라이언트의 요청을 처리함

0개의 댓글

관련 채용 정보