关键字: jsf入门
JSF以MVC模式为基础,与Struts不同,JSF的目标是希望以一个与Swing相类似的方式来开发网页,因此,从JSF的结构图当中,他的核心概 念不是页面,而是控件树,也就是说,当用户提交一个请求时,JSF会先将页面上的组件先转换为与Swing当中类似的,由容器和控件组成的控件树,然后数 据和事件被设置到对应的控件上,然后以一种与Swing类似的方式,来处理后续的请求。控件树是整个JSF的核心,所有其他的一切一切都是围绕着这棵控件 树展开的
JSF的处理核心是控件树,他会先将页面上所声明的控件转换为一棵控件树,后续的操作将在这颗控件树上进行。为了提高性能,系统会为之前生成的控件树提供 缓存。Restore View的工作就是在缓存当中查找是否存在之前已经生成好的控件树,如果没有,则根据页面的内容,重新生成。
导入包:
Java代码jsf-impl.jar
* jsf-api.jar
* commons-digester.jar
* commons-collections.jar
* commons-beanutils.jar
* jstl.jar
* standard.jarjsf-impl.jar * jsf-api.jar * commons-digester.jar * commons-collections.jar * commons-beanutils.jar * jstl.jar * standard.jar
web.xml配置
Xml代码<?xml version="1.0" encoding="ISO-8859-1"?>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
JSF Demo
JSF Demo
Faces Servlet
javax.faces.webapp.FacesServlet
1
Faces Servlet
*.faces
index.html
<?xml version="1.0" encoding="ISO-8859-1"?> JSF Demo JSF DemoFaces Servlet javax.faces.webapp.FacesServlet 1Faces Servlet*.facesindex.html定义一个javabean
Java代码package onlyfun.caterpillar;
public class UserBean {
private String name;
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
}package onlyfun.caterpillar; public class UserBean { private String name; public void setName(String name) { this.name = name; } public String getName() { return name; } }
定义一个/WEB-INF/faces-config.xml像struts中的struts-config.xml文件一样,实现跳转:
Xml代码<?xml version="1.0"?>
faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
"http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
/pages/index.jsp
login
/pages/welcome.jsp
user
onlyfun.caterpillar.UserBean
session
<?xml version="1.0"?> /pages/index.jsplogin/pages/welcome.jspuser onlyfun.caterpillar.UserBean session
index.jsp
Html代码
第一个JSF程序请输入您的名称
名称:
//action也可以指定为某类的某个方法,只要该方法返回一个JSF配置文件中的一个跳转
第一个JSF程序请输入您的名称
名称:welcome.jsp
Java代码
第一个JSF程序您好!