2014-07-18 1 views
1

저는 주로 첫 번째 옵션을 사용했지만 두 번째 옵션을 사용했습니다. 적은 코드로 모든 것을 더 빠르게 처리하는 것으로 보입니다. JSF를 사용하여 양식을 만드는 것이 더 좋은 방법은 무엇입니까? 많은 서버 및 클라이언트 측 유효성 검사가있는 응용 프로그램 용 양식을 작성하기위한 더 나은 옵션이 있습니까? 나는 정말로 new Person()과 같은 생성자를 갖고 싶지 않습니다. 너 나에게 조언 해 줄거야? 고맙습니다.JSF 양식 작성하기가 가장 좋습니다.

옵션 1 :

보기 :

<h:inputText value=#{bean.fisrtName}/> 
<h:inputText value=#{bean.lastName}/> 
<h:commandButton action=#{bean.submit()}/> 

private firstName; 
private lastName; 

public String submit(){ 
    Person person = new Person(firstName, lastName); 
    // do something with person 
} 

옵션 2 :

보기

<h:inputText value=#{bean.person.fisrtName}/> 
<h:inputText value=#{bean.person.lastName}/> 
<h:commandButton action=#{bean.submit()}/> 

private Person person 

@PostConstruct 
public void init(){ 
    person = new Peson(); 
} 

public String submit(){  
    // do something with person 
} 
+0

옵션 2와 함께 모든 오타 및 누락 된 인용 부호 외에 무엇이 잘못 되었나요? – Gimby

+0

옵션 2가 더 좋습니다. 특히 bean에 둘 이상의 엔티티 유형 인스턴스가 있고 엔티티의 더 많은 필드가있는 경우에 유용합니다. –

답변

0

당신이 당신의 관리 빈을 delevop 방법은 당신이 JSF에서 제공하는 MVC 접근에 넣어 깊이에 따라 달라집니다. 당신이 fullworthy JSF 응용 프로그램을 개발하려는 경우, 당신은 기본적으로해야합니다 (MVC 근거 기준) 출발점으로 :

  • Facelet 페이지로보기 :이 정보를 나타내며, 사용자 작업을 처리 ;
  • 관리 된 콩컨트롤러 : 작업을 처리하고 렌더링을 올바른보기로 위임합니다.
  • 엔터티으로 모델 : 모든 데이터를 보유합니다.

작은 초보자 용 응용 프로그램에서는 모델을 컨트롤러와 혼합 할 수 있지만 응용 프로그램이 커짐에 따라 이러한 콩 관리가 번거로울 수 있습니다. 실 제 응용 프로그램에서 관리 Bean은 일] 적으로 관련 엔티티와 구성원을 포함합니다.

따라서 옵션 2는 더 나은 MVC 접근 방식으로 더 나은 관심사를 제공합니다.

조금 더 넓은 사진은 What components are MVC in JSF MVC framework?으로 문의하십시오.

관련 문제