요청 MVC와 구성 요소 MVC의 차이점
JSF가 컴포넌트 기반 MVC를 구현하고 있고 Spring MVC가 요청 기반 MVC를 구현하고 있다고 들었습니다. 이 두 유형의 정확한 기술적 차이점이 무엇인지 알고 싶습니다.
요청 (동작) 기반 MVC에서 단일 프런트 컨트롤러 서블릿은 요청 URL / 매개 변수를 기반으로 동작 모델에 위임합니다. 액션 모델에서 원시 HttpServletRequest
및 HttpServletResponse
객체로 직접 작업합니다. 요청 매개 변수를 수집, 변환 및 검증하고 필요한 경우 비즈니스 작업을 호출하기 전에 모델 값을 업데이트하는 코드를 직접 작성해야합니다.
구성 요소 기반 MVC에서 단일 프런트 컨트롤러는 요청 매개 변수를 수집, 변환 및 검증하고 모델 값 자체를 업데이트하므로 비즈니스 작업에 대해서만 걱정할 필요가 있습니다. 컨트롤러가 값을 수집 / 변환 / 검증 / 업데이트해야하는 방법은 단일 위치 인보기에서 정의됩니다. "일반"HTML에서는 불가능하므로 목표를 달성하려면 특정 마크 업 언어가 필요합니다. JSF 2.0의 경우 XML (XHTML) 기반입니다. XML을 사용하여 컨트롤러가 모델 값을 수집 / 변환 / 검증 / 업데이트하고 필요한 HTML 표현을 생성 / 렌더링하는 방법에 대한 정보를 포함하는 UI 구성 요소를 정의합니다.
이 시점에서 장점과 단점이 명확해야합니다. 요청 기반 MVC 프레임 워크를 사용하면 목표를 달성하기 위해 더 많은 (보일러 플레이트) 코드를 직접 작성해야합니다. 그러나 프로세스와 HTML / CSS / JS 출력에 대해 훨씬 더 세밀한 제어가 가능합니다. 컴포넌트 기반 MVC 프레임 워크를 사용하면 많은 코드를 직접 작성할 필요가 없습니다. 그러나 프로세스 및 HTML / CSS / JS 출력에 대한 세부적인 제어가 어렵습니다. 따라서 표준 설명 및 / 또는 구현에서 제공 하는 것과 약간 다른 작업을 수행 하려면 구성 요소 기반 MVC 프레임 워크에서 그 내용에 정통하지 않을 때 훨씬 더 많은 시간을 낭비하게됩니다. .
Manfred Riem (JSF 2.x 팀 구성원 및 전 Java EE 8 MVC 1.0 사양 책임자)은 Devoxx 14에서 MVC 1.0 (JSR 371)에 대한 연설에서 이를 잘 설명했습니다 .
또한보십시오:
- CSS, HTML, JavaScript, jQuery에서 UI를 얻을 수있을 때 JSF의 필요성은 무엇입니까?
- Java Server Faces 2.0의 주요 단점은 무엇입니까?
- Spring MVC의 뷰 기술로 JSF 사용
- 디자인 패턴 웹 기반 애플리케이션
참고 URL : https://stackoverflow.com/questions/4801891/difference-between-request-mvc-and-component-mvc
'code' 카테고리의 다른 글
Perl에서 어떻게 단위 테스트를 할 수 있습니까? (0) | 2020.11.28 |
---|---|
일련의 텍스트 항목에서 공통 / 중요 구문을 추출하는 방법 (0) | 2020.11.28 |
Ctrl-C는 어떻게 자식 프로세스를 종료합니까? (0) | 2020.11.28 |
클래스 경로 항목 org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER은 내보내지지 않습니다. (0) | 2020.11.28 |
프레임 워크에 의존하지 않는 MVC 튜토리얼? (0) | 2020.11.28 |