M: Model
V: View
C: Controller
Model
어플리케이션의 정보나 데이터, DB등을 나타냄
View
사용자에게 보여지는 화면 UI, 모델로부터 정보를 얻고 표시한다
Controller
데이터와 비즈니스로직 사이의 상호동작을 관리(Model 과 View를 통제)
View 와 Model이 직접적인 소통X
MVC 패턴의 종류
MVC1
User ----> View ----------> Model ---------->DB
(Client) Controller
JSP Java Bean
View Controller를 JSP에서 담당
(JSP: 유저의 요청을 받음, 응답을 처리)
JSP에서 MVC패턴이 모두 이루어 지기 때문에 ,재사용성 떨어지고 읽기도 힘들어짐 (유지보수하기 어려움)
- JSP : HTML문서에서 내부적으로 Java문법을 사용할 수 있게 해주는 Java Server Page언어
- Servlet : client 의 요청에 대한 결과를 response해주는 역할을 하는 자바 프로그램
- Servlet Container : 생성한 Servlet들을 관리해주는 컨테이너, Servlet을 보고 행동하는 수행자
ex) tomcat - Dispatcher-servlet : Servlet Container에서 Http요청을 가장먼저 받고 처리하는 Front Controller , 공통된 작업을 처리해준 뒤에 적절한 세부 컨트롤러에 작업을 위임함
MVC2
request
User ----> Controller ---------> Model <-------------->DB
(Servlet) Java Bean
Model
User <--------- View <------------>Java Bean
하나의 컨트롤러(Servelt)가 요청(request)을 받는다.
MVC1 과는 다르게 Controller View가 분리되어 있음 ---> 역할이 분리되어 개발자는 M, V, C 중 수정할 부분만 꺼내어 수정이 가능하다 (ㅇ)
'Spring' 카테고리의 다른 글
Spring -03 (0) | 2023.02.23 |
---|---|
post, get 방식 (0) | 2023.02.23 |
Mapping (0) | 2023.01.09 |
Spring (0) | 2023.01.09 |
day4 (0) | 2022.12.14 |