文档介绍:第六章
JSF 应用程序的结构
JSF 将表示和应用程序行为明确分开,JSF是一种事件驱动型的组件模型
请求处理生命周期包括6个阶段
JSF页面指向Bean属性,业务逻辑包含在Bean实现代码中
JSF提供了一系列可用于JSP页面里的标准UI组件
数据转换模型负责将 UI 组件文本数据转换成 java 数据类型
事件和监听器模型负责注册事件和处理事件。当一个事件被触发时,JSF将调用相应的监听器的方法
回顾
2
目标
理解JSF应用的开发过程
在 JBuilder 2005 中创建 JSF 应用程序
国际化 JSF 应用程序
3
JSF 开发角色 2-1
页面设计人员
应用程序开发人员
工具开发人员
JSF 实现者
组件开发人员
4
页面设计人员
组件开发人员
应用程序
开发人员
工具开发人员
创建 Web 应用程序的用户界面
为模型对象和事件处理编程
创建基于JSF组件的定制组件
他们负责开发可重用组件、呈现器类以及各种库
JSF 实现者
提供执行 JSF Web 应用程序的运行时环境
为页面设计人员、组件开发人员以及应用
程序开发人员开发各种集成开发环境(IDE),
以简化多层Web应用的开发
JSF 开发角色 2-2
5
JSF 开发过程
开发模型对象
开发基于JSF的用户界面
编写事件监听器或者导航规则
6
开发模型对象2-1
组件
应用程序开发人员
JSP 页
页面设计人员
模型对象属性
后台 Bean
!
验证
7
开发模型对象2-2
<h:inputText id="email" value="#{}"/>
public class User {
private String email;
private String password;
Authenticate obj = new Authenticate();
public void setEmail(String email) { = email; }
public void setPassword(String password) {
= password;
}
public String getEmail() { return email; }
public String getPassword() { return password; }
public boolean verifyUser(String email, String pwd){
return (email, pwd);
}
}
<managed-bean>
<managed-bean-name> Userbean</managed-bean-name>
<managed-bean-class></managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
class Authentication {
public boolean validateUser(String email, String pwd){
//此代码检查数据库中的用户信息
//如果用户存在则返回 true, 否则返回 false
}
}
8
开发用户界面
建立JSP页面,使用定制标签表示将作为HTML 元素的用JSF组件
<h:outputLabel value= "电子邮件" for="email" />
<h:inputText id="email" value="# {}" />
<h:outputLabel value= "密码" for="password" />
<h:inputText id="password" value="#{}" />
<mandButton id="Login"
action= "#{}" value= "登录" />
9
定义页面导航
登录成功!
欢迎 Thomas!
欢迎来到登录页!
登录
重置
输入电子邮件地址:
输入密码:
Thomas@
******
在不同页面之间导航
<navigation-rule>
<from-view-id>/</from-view-id>
<navigation-case>
<from-e>ess</from-e>