Spring MVC에 대해 알아보자

SionBackEnd·2022년 8월 20일
0

Spring(봄)

목록 보기
10/22
post-thumbnail

스프링에서 지원하는 모든 기능들을 포함하여 Spring Framework라고 부른다.

스프링의 모듈중 웨 계층을 담당하는 몇가지 모듈중 서블릿 API를 기반으로 클라이언트의 요청을 처리하는 모듈 그것이 Spring - webmvc이다.

개발자들은 Spring - webmvc를 간단하게 줄여서 Spring MVC 또는 Spring MVC 프레임워크라고 부른다.
따라서 오늘부터는 Spring MVC를 들으면 Spring - webmvc를 말하는구나 생각하면 된다.

정리

  • Spring MVC는 클라이언트의 요청을 편리하게 처리해주는 프레임워크이다.

서블릿이란

클라이언트의 요청을 처리하도록 특정 규약에 맞추어서 Java 코드로 작성하는 클래스 파일

톰캣은 서블릿들이 웹 애플리케이션으로 실행이 되도록 해주는 서블릿 컨테이너 중 하나이다.

기억할점

Spring MVC 내부에서는 서블릿을 기반으로 웹 애플리케이션이 동작한다.

MVC의 뜻을 분해 해보자

M (Model)

클라이언트의 요청을 전달 받아 요청 사항을 처리하기 위한 작업을 한후 처리한 작업의 결과 데이터를 클라이언트에게 응답으로 돌려주는 작업의 처리 결과 데이터를 Model이라고 한다.

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

V (View)

Viewsms Model 데이터를 이용하여 웹브라우저 같은 클라이언트 애플리케이션의 화면에 보여지는 리소스를 제공하는 역활을 한다.

View의 형태

  • HTML 페이지의 출력
  • PDF, Excel 등의 문서 형태로 출력
  • XML, Json 등 특정 형식의 포맷으로의 변환

우리가 알아두어야 할 방식은 JSON 방식이다.
XML, JSON 방식의 장점으로는

  • 프론트엔드 영역과 백엔드 영역이 명확하게 구분되므로 개발 및 유지보수가 상대적으로 용이하다.
  • 프론트엔드 측에서 비동기 클라이언트 애플리케이션을 만드는 것이 가능해진다.

앞으로 내가 배우게 될 View 형태는 Model 데이터를 JSON 프로토콜 데이터로 변환하는 것이다.

JSON이란

JSON은 Spring MVC에서 클라이언트 애플리케이션과 서버 애플리케이션이 주고 받는 데이터 형식이다.
과거에는 XML 형식의 데이터가 많이 사용되었으나 현재는 XML보다 상대적으로 가볍고, 복잡하지 않은 JSON 형식을 대부분 사용하고 있는 추세이다.

C (Controller)

Cotroller는 클라이언트 측의 요청을 직접적으로 전달 받는 엔드포인트로써 Model과 View의 중간에서 상호 작용을 해주는 역활을 한다.
클라이언트 측의 요청을 전달 받아서 비즈니스 로직을 거친 후에 Model데이터가 만들어지면, 이Model 데이터를 View로 전달하는 역활을 한다.

profile
많은 도움 얻어가시길 바랍니다!

0개의 댓글