Web/SrpingBoot
[Spring] MVC 패턴과 MVC1, MVC2 및 Spring Framework에서의 MVC2 정리
나는나는용
2023. 8. 5. 14:21
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