【发布时间】:2014-07-18 13:24:21
【问题描述】:
我主要使用第一个选项,但我遇到了第二个选项,它似乎可以用更少的代码更快地完成所有事情。哪种方式更适合使用 JSF 创建表单?为具有许多服务器和客户端验证的应用程序创建表单是否有更好的选择?我真的不喜欢有像new Person() 这样的构造函数。你会给我什么建议?谢谢。
选项 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
}
【问题讨论】:
-
那么选项 2 有什么问题,除了所有的拼写错误和缺少引号?
-
选项 2 更好,尤其是当 bean 中有多个实体类型实例且实体中有多个字段时。