programing

MVC는 JSF MVC 프레임워크에서 어떤 컴포넌트입니까?

randomtip 2022. 12. 11. 10:25
반응형

MVC는 JSF MVC 프레임워크에서 어떤 컴포넌트입니까?

JSF MVC 프레임워크에서 모델, 뷰 및 컨트롤러는 누구입니까?

이는 시점(펀트 의도)에 따라 달라집니다.

전체적인 아키텍처 그림에서 JSF 코드는 V:

M - 비즈니스 도메인/서비스 계층(예: EJB/JPA/DAO)
V - JSF 코드
C - Faces Servlet

개발자 그림에서 아키텍처 V는 다음과 같이 분할할 수 있습니다.

M - 엔티티
V - 페이스렛/JSP 페이지
C - 관리빈

작은 클라이언트 그림에서 개발자 V는 다음과 같이 분할할 수 있습니다.

M - JSF 구성 요소 트리
V - 렌더링된 HTML 출력
C - 클라이언트(웹 브라우저)

더 작은 JavaScript 그림에서 클라이언트 V는 다음과 같이 분할할 수 있습니다.

M - HTML DOM 트리
V - 시각적 프레젠테이션
C - 이벤트 리스너 함수(최종 사용자 상호작용 및 Ajax)

즉, 기본적으로는 M(M(M(MVC)C)C입니다.

일부 시작자 및 일부(매우 기본적인) 튜토리얼은 관리 대상 빈에 있는 엔티티의 속성을 혼합/복사/플랫하여 효과적으로 컨트롤러를 모델로 만듭니다.이것은 형편없는 설계(즉, 깨끗한 MVC 설계가 아님)라는 것은 말할 필요도 없습니다.

다음 답변의 코드 스니펫은 올바른 MVC 접근방식을 보여줍니다.

Java EE 8의 JSF에 대한 정의 가이드(The Definitive Guide to JSF in JSF in JSF 8, 276페이지)에서 아래 벤 다이어그램은 JSF 개발자와 관련된 컨텍스트 내에서 MVC 패러다임에서 백업 빈의 위치를 설명하기 위해 사용됩니다.저작권 면책사항: 책은 내가 쓰고 그림은 내가 만든다.

여기에 이미지 설명 입력

Model은 당신의 입니다.ManagedBean

View는jsp,XHTML(여기서는 다양한 뷰에 대응할 수 있습니다.)

온트롤러는FacesServlet

업데이트, 이 사진이 더 도움이 되길 바랍니다.

여기에 이미지 설명 입력

페이스 서블릿은 페이스의 라이프 사이클을 관리합니다.그러므로 각 라이프 사이클 단계에서 호출될 가능성이 있는 것은 컨트롤러와 자체 코드를 조합한 것입니다.

http://www.java-samples.com/images/jsf-lifecycle.gif

Java Server Faces는 MVC 웹 프레임워크로 MVC 컴포넌트는 다음과 같습니다.

  1. 모델 - @ManagedBean으로 주석을 단 관리 대상 콩 클래스이며, 데이터 및 각 getter 및 setter를 보유하는 속성이 있습니다.managed bean 클래스에는 비즈니스 로직도 포함될 수 있습니다.이들은 backing bean이라고도 하며 요청, 세션, 응용 프로그램 등 다른 범위를 가질 수 있습니다.

  2. 보기 - 클라이언트에 표시되는 사용자 인터페이스(예: .xhtml 파일).관리되는 콩에서 데이터를 가져와 응답으로 렌더링됩니다.

  3. 컨트롤러 - javax.servlet.webapp.Faces Servlet은 기본적으로 서블릿인 집중형 컨트롤러 클래스입니다.먼저 JSF에 도달하는 모든 요청은 Faces Servlet 컨트롤러로 전송됩니다.독자적인 컨트롤러 클래스를 작성하는 JSP와는 달리, JSF에서는 컨트롤러 서블릿은 프레임워크의 고정 부분이기 때문에 쓰지 않습니다.

MVC 흐름-

여기에 이미지 설명 입력

언급URL : https://stackoverflow.com/questions/5104094/what-components-are-mvc-in-jsf-mvc-framework

반응형