MVC패턴의 등장
2022. 10. 25. 14:41ㆍSpring
서블릿, JSP의 한계와 MVC패턴의 등장
서블릿으로 개발할 때는 뷰 화면을 위한 HTML을 만드는 코드가 자바 코드에 섞여서 지저분하고 복잡하다. 뷰 템플릿인 JSP의 경우 뷰를 생성한는 HTML이 비교적 깔끔하지만 동적으로 변경이 필요한 부분에는 자바코드가 들어간다. 결과적으로는 로직을 위한 자바 코드와 뷰를 위한 코드가 섞여 깔끔하지 못하고 각자의 역할에 집중하지 못하게 된다.
- 컨트롤러: HTTP 요청을 받아서 파라미터를 검증하고, 비즈니스 로직을 실행한다. 그리고 뷰에 전달할 결과 데이터를 조회해서 모델에 담는다.
- 모델: 뷰에 출력할 데이터를 담아둔다. 뷰가 필요한 데이터를 모두 모델에 담아서 전달해주는 덕분에 뷰는 비즈니스 로직이나 데이터 접근을 몰라도 되고, 화면을 렌더링 하는 일에 집중할 수 있다.
- 뷰: 모델에 담겨있는 데이터를 사용해서 화면을 그리는 일에 집중한다.
참고
컨트롤러에 비즈니스 로직을 둘 수도 있지만 이렇게 되면 컨트롤러가 너무 많은 역할을 담당한다. 그래서 일반적으로 비즈니스 로직은 Service라는 계층을 별도로 만들어 처리한다.
해당 내용은 김영한님의 인프런_[스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술]을 기본으로 정리했습니다.
'Spring' 카테고리의 다른 글
MVC패턴 이해하기3 (0) | 2022.10.25 |
---|---|
MVC패턴 이해하기1 (0) | 2022.10.25 |
DispatchServlet을 통해 보는 스프링 구조 (0) | 2022.09.02 |
[Spring] - 414 request-uri too large (0) | 2021.03.22 |
[Srping] 전자정부프레임워크 - mariadb 연결 (0) | 2021.03.16 |