频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

JSP牵手JSF打造完美的Web应用

来源:operamasks 作者:atomic_age 出处:巧巧读书 2007-03-07 进入讨论组
二、如何在JSP中使用JSF

  JSF只有通过和JSP相结合,才能充分发挥它的功效。JSF是通过标签库和JSP进行集成的。标签库就相当于ASP.NET的服务端组件。JSF提供了非常丰富的标签库,通过这些标签库,可以生成各种客户端模型,如HTML、WML、XML以及JavaScript等。通过这些标签,你可以很容易建立大规模的客户端模型,并由这些标签自动处理客户端请求。

  接下来让我们来看一个如何使JSF和JSP在一起工作的例子。在JSF中有两个库。第一个叫做内核库,在这个库中包含了各种主要的标签,如配置组件、管理事件、验证输入信息等。第二个库的主要功能是将HTML和JSF的各种标签相对应。每一个JSF标签都会对应一个HTML组件。如UIInput标签对应了HTML中的文本框或密码框。

  在JSF标签中文本输入框叫做inputText,而密码输入库叫inputSecret。下面是一个简单的JSF和JSP结合的用户接口程序。

以下是引用片段:
  <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %> 

  <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %> 

  <html> 

  <head> 

  <meta HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=GB2312"> 

  <title>第一个JSF程序</title> 

  </head> 

  <body> 

   <f:view> 

   <h:form id="simpleForm"> 

   <h:outputText id="favoriteLabel" value="请输入一个数字:"/> 

   <h:inputText id="favoriteValue" value="#{simple.longValue}"> 

    <f:validateLongrange maximum="30" minimum="0"/> 

   </h:inputText> 

   <p/> 

   <h:commandButton id="submit" value="提交" action="#{simple.simpleActionMethod}"/> 

   </h:form> 

   </f:view> 

  </body> 

  </html> 

  在上面的代码中,我们可以了解到JSF是如何同JSP集成的。我们首先可以看到一个内核标签:view。然后是几个JSF组件。如form、outputText、inputText以及commandButton。这几个组件被放到form中从而开成了form中的一部分。在程序的最开始,必须使用import导入两个标签库。代码如下。

以下是引用片段:
  <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %> 

  <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %> 

  上面2行代码声明了JSP中要使用哪一个JSF标签库。内核库使用前缀(prefix)f声明,而HTML库使用前缀(prefix)h声明。这两个前缀并不是必须要使用,而只是一个建议。在程序中,内核库必须要使用,因为view在所有的JSF页中必须使用。而HTML标签在运行时将JSF标签转化为HTML组件,这个h前缀并不是必须的,而是JSF规范推荐使用的,这样,我们使我们的JSF程序更易读。

  在声明后是几行标准的HTML语句,本文不再详述。从<f:view>开始,是一段JSF语句。这段代码如下所示:

以下是引用片段:
  <f:view> 

  <h:form id="simpleForm"> 

  <h:outputText id="favoriteLabel" value="请输入一个数字:"/> 

  <h:inputText id="favoriteValue" value="#{simple.longValue}"> 

  <f:validateLongrange maximum="30" minimum="0"/> 

  </h:inputText> 

  <p/> 

  <h:commandButton id="submit" value="提交" 

  action="#{simple.simpleActionMethod}"/> 

  </h:form> 

  </f:view> 

  </f:view>标签预示着JSF的开始,而它的下一个标签form将建立一个HTML Form。而outputText标签相当于HTML中的label组件。inputText标签相当于HTML中的textField组件。而commandButton标签相当于HTML中的submit按钮。运行这个JSP程序,将得到如图1所显示效果。

   巧巧读书:http://www.qqread.com/java/2007/03/w300242.html

更多文章 更多内容请看Jsp完全攻略专题JSP教程专栏Jsp 实例应用专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选