민스씨의 일취일장

LogT | Java Spring의 MVC 패턴에 대해 알게된 모든 내용과 고민들 본문

Programming Language & Framework/JAVA & Spring

LogT | Java Spring의 MVC 패턴에 대해 알게된 모든 내용과 고민들

읻민스 2023. 1. 9. 23:08
반응형

Java Spring의 MVC에 대해 공부한 내용을 시간순으로 기록하고 있다.


2023년 1월 9일

스프링의 정석 강의에서 관심사의 분리와 MVC 패턴에 대한 강의를 들었다.

MVC 약자

MVC는 Model, View, Controller의 첫 글자들을 모아서 만든 단어이다.

관심사의 분리

OOP (Object-Oriented Programming) 5대 원칙 중 하나인 SRP(Single Responsibility Principle : 단일 책임 원칙)에 따라 코드를 크게 입력, 처리, 출력으로 나눌 수 있다.

입력

Client Side에서 데이터를 전달 받을 때 기존에는 HttpServletRequest 객체를 이용해서 하나하나 불러와야 했다. 하지만 Spring에서는 인자값에 변수를 설정해주면 자동으로 매칭이 돼 입력부 코드가 간소화 됐다.

출력

화면 출력을 위한 HTML 코드를 직접 코드에 작성하는 것 대신 Spring의 View 기능을 이용해 HTML 코드는 html 파일로 분리시켜 놓고 필요할 때 불러와서 사용할 수 있도록 했다.

Controller

위와 같은 입력과 출력의 기능을 본 코드에서 분리시켜 놓음으로써 코드는 처리 부분에 집중할 수 있도록 관심사를 분리할 수 있었고 이런 처리를 담단하는 객체를 Controller라고 부른다.

View

출력할 결과물들을 개개의 파일로 분리시켜 사용할 수 있도록 하는 Spring의 기능을 View 영역이 담당한다.

Model

위에서 Controller의 처리 결과를 View 영역으로 데이터를 전달 할 때 사용하는 객체를 Model이라고 한다.

오늘까지 이해한 MVC란?

MVC 패턴은 관심사에 따른 분리로 코드를 처리영역(Controller)와 출력영역(View)로 나누고, 이 두 영영에 데이터를 원할히 전달하기 위해 Model 이라는 데이터 전달 객체를 도입한 코딩방식이다. 

 

 

 

728x90
반응형