JAVA教程之JSF开发(一)

Java Server Faces(JSF)技术为开发基于网络用户界面的Java开发者提供了标准的编程接口API以及标记库。Apache Struts框架的作者Craig McClanahan,协助领导了Sun公司的JSF项目。这使项目能够容易的从流行的Apache向JSF标准移植得到了保证。就像Struts框架一样,JSF定义了一套JSP标记,能够生成与JavaBean属性绑定在一起的HTML表单元素。

成都创新互联专注于企业成都全网营销、网站重做改版、马边彝族网站定制设计、自适应品牌网站建设、H5页面制作商城开发、集团公司官网建设、外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为马边彝族等各大城市提供网站开发制作服务。

从应用开发者的角度看,两种框架是很相似的,但是JSF可能将会得到更多的支持。因为JSF是Java的标准。在未来的发展中,有可能所有的J2EE应用服务器都需要支持JSF(Java Server Faces)。

本文包含一个由四个主要部分组成的网络应用

1. JavaBean类(PBean.java),作为数据模型保存一些文本以及相关属性:字体、大小、 颜色、摆放位置等;

2. 基于JSF的表单(edit.jsp),使用户可以为JavaBean的属性赋值;

3. Java类(PBuilder.java),用给定的文本按照其属性值生成HTML页面程序;

4. JSP页面(view.jsp),显示生成的HTML页面。

JavaServer Faces(或者叫JSF)是服务端程序开发新的发展趋势。它可以使你更轻松的的设计程序,你的程序也能够更容易维护,甚至可能还会使你的工作更有趣。Budi Kurniawan向我们展示了JSF技术,解释了为什么JSF如此有用以及它是否实现了所承诺的功能。

图1:基于JSF的表单

制作JSF表单

当你开发网络应用时,处理HTML表单是最常见的一项任务。一个好的框架能够节省很多开发时间,因为许多日常的程序操作可以自动的完成或是减少到最低限度只需要在XML文件中用几行完成。这也有可能简化使用JSP标记库的网络开发。

Java Server Faces框架提供了JSP标记,用于描述表单、管理表单状态、确认用户输入以及报错、将用户界面组件与JavaBean属性绑定在一起以及其他许多可提高开发效率的功能。JSF也有丰富的编程接口可用于建立定制的用户界面(UI)组件,定制验证类(验证器validator)以及服务端的事件监听器。

JSF包含两类标记库分别叫JSF核心库与HTML基础库。前者提供普通的标记和一些用于在用户界面组件中注册验证器以及事件监听器的标记。后者包含用于描述用户界面组件的JSP标记,如:按钮、文本域、复选按钮、列表等。文件edit.jsp用这些标记建立了表单。两种标记库的标准前缀是f和h,并且定义在edit.jsp文件的最前面:

 
 
 
 
  1. <%@ taglib prefix="f" uri="http://java.sun.com/jsf/core"; %>  
  2. <%@ taglib prefix="h" uri="http://java.sun.com/jsf/html"; %> 

 

标记是容器标记,必须包含所有在同一页面中出现的JSF标记。该标记不会产生任何HTML内容,但是它会触发JSF的内部机制。标记产生能够包含用户界面元素的HTML元素

 
 
 
 
  1.  
  2.  
  3. Edit 
  4.  
  5.  
  6.  
  7.  
  8. ..........  
  9.  
  10.  
  11.  
  12.  

 

上面的JSP代码生成下面的HTML片断:

 
 
 
 
  1.  
  2.  
  3. Edit 
  4.  
  5.  
  6.  
  7. ..........  
  8.  
  9.  
  10.  

#p#

下一部分介绍应用的JavaBean模型。

管理Bean

像其他一些Web框架一样,JSF将用户界面从封装数据以及应用逻辑的对象模型中分离出来。当HTML用户界面由JSF标记产生时,JSF框架从JavaBean模型获得数据并设置HTML表单用户界面组件的属性状态。用户提交表单时,JSF验证用户输入,如果全部正常JSF就将用户输入保存到JavaBean模型并且HTTP请求会根据“导航规则”进入下一页面。如果验证出现错误,JSF回到表单并返回错误信息,这样用户就可以纠正错误输入。

类Pbean遵循JavaBean规范,实现了java.io.Serializable并为其属性(文本、大小、字体、颜色、摆放位置、粗体、斜体、下划线)提供了相应的get及set方法。JSF每一个应用的用户都创建了一个PBean的实例,该实例存储在JSP的会话(session)中并在名为faces-config.xml的XML格式配置文件中指定ID。JSF也会根据faces-config.xml文件提供的数据初始化JavaBean实例的属性值。该XML文件还可能包含其他JSF配置参数,如:导航规则。

下面的XML程序片断包含由JSF所管理的JavaBean的声明:

 
 
 
 
  1.  
  2. "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"  
  3. "http://java.suncom/dtd/web-facesconfig_1_0.dtd";> 
  4.  
  5. ..........  
  6.  
  7. pbean 
  8.  
  9. com.devsphere.articles.usingjsf.PBean  
  10.  
  11. session 
  12.  
  13. text 
  14.  
  15.  
  16.  
  17. size 
  18. 3 
  19.  
  20.  
  21. font 
  22.  
  23. Arial 
  24. Courier New 
  25.  
  26.  
  27.  
  28. color 
  29. green 
  30.  
  31.  
  32. align 
  33. left 
  34.  
  35.  
  36. bold 
  37. false 
  38.  
  39.  
  40. italic 
  41. true 
  42.  
  43.  
  44. underline 
  45. false 
  46.  
  47.  
  48.  

 

由JSF创建的管理bean能够根据元素的值而存储在请求(request)、会话(session)或应用的范围内。元素的值可为空值。如果一个对象已经指定了ID并注册在给定的范围内那么JSF不会建立JavaBean实例。

注:

源代码下载地址:http://www.onjava.com/onjava/2003/09/03/examples/usingjsf-src.zip

相关文档

原文:Introducing JavaServer Faces(http://www.onjava.com/pub/a/onjava/2003/07/30/jsf_intro.html)

译文:http://www.matrix.org.cn/forum_view.asp?forum_id=14&view_id=658

文章标题:JAVA教程之JSF开发(一)
文章路径:http://www.shufengxianlan.com/qtweb/news40/531690.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联