728x90
MVC 패턴
소프트웨어 디자인 패턴 중 하나.
M : Model : 어플리케이션 정보·데이터·DB 등
V : View : 사용자에게 보여지는 화면( UI ), 모델로부터 정보를 얻고 표시함.
C : Controller : 데이터와 비즈니스 로직 사이의 상호 동작을 관리함 (▶ 모델과 뷰 통제 : MVC패턴에서 View와 Model이 직접적인 상호 소통하지 않도록 관리함)
MVC 1
View와 Controller 모두 JSP가 담당 ▶ JSP 하나로 유저 요청 받고 응답(구현 쉬움)
JSP 하나에서 MVC가 모두 이뤄지다보니 재사용성이 매우 떨어져 유지·보수 문제가 발생하며, 가독성이 나쁨.
MVC 2
표준으로 사용됨.
요청을 하나의 컨트롤러(Servlet)가 먼저 받음 → View와 Controller의 분리 ▶ MVC 1의 단점을 보완함.
M, V, C 중에서 수정이 필요한 부분만 꺼내 수정할 수 있음.
구조가 복잡할 수 있으나, 이런 세부적인 것들에 신경쓰지 않아도 되게 프레임워크가 발전해왔음.
그 중 하나가 Spring Framework !!
Spring Framework 의 MVC 2
Dispatch Servlet (Front Controller)
우선적으로 유저의 모든 요청을 받고, 그 요청을 분석하여 세부 컨트롤러들에게 필요한 작업을 나눠줌.
728x90
'Web > SrpingBoot' 카테고리의 다른 글
스프링부트3 백엔드 - 2. 스프링 부트 3 시작하기(스프링과 스프링부트 차이, IoC, DI, AOP, PSA ) (0) | 2023.08.26 |
---|---|
스프링부트3 백엔드 - 1. 자바 백엔드 개발자가 알아두면 좋은 지식 (0) | 2023.08.17 |
Maven 과 Gradle 이란? (0) | 2023.08.02 |
JAR 와 WAR 란? (0) | 2023.08.01 |
스프링 입문을 위한 자바 객체 지향의 원리와 이해 4 (0) | 2023.07.19 |