zoukankan      html  css  js  c++  java
  • java ee 6周

    JSFJavaServer FacesJSF是一个为网络应用程序构建基于组件的用户界面的java规范,并已通过jcp格式化为java ee的一部分。它也是一个mvc web应用框架,通过在页面中使用可重用的UI组件简化了基于服务器的应用程序的用户界面。为了展现UI组件和管理它们的状态;操作事件、服务器端的确认和数据变换;定义页面导航;支持国际化和可访问性;提供对所有特性的可扩展性的API为了在JSP中表示UI组件和拍发组件给服务器端对象的两个JSP自定义tag库。

    JSF的生命周期:

    来源:https://blog.csdn.net/kamemo/article/details/7552406

    Facelets是一种轻量级的页面声明语言,用于使用HTML样式构建JSF(JavaServer Faces)视图。

    包括以下功能:

    • 它使用XHTML创建网页。
    • 除了支持JavaServer Faces和JSTL标记库之外,它还支持Facelets标签库。
    • 它支持表达语言(EL)。
    • 它是使用组件和页面的模板。

    优点

    • 它通过模板和复合组件支持代码可重用性。
    • 它通过定制提供组件和其他服务器端对象的功能可扩展性。
    • 编译时间更快
    • 它在编译时验证表达式语言。
    • 高性能渲染能力。

    JSF(JavaServer Faces)技术支持各种标签库,以将组件添加到网页。 为了支持JavaServer Faces标签库机制,Facelets使用XML命名空间声明。

    下表显示了Facelets支持的标签库。

    标签库URI前缀示例内容
    JSF Facelets标签库 http://xmlns.jcp.org/jsf/facelets ui: ui:componentui:insert 模板标签
    JSF HTML标签库 http://xmlns.jcp.org/jsf/html h: h:head,h:body 所有UI组件对象的JavaServer Faces组件标记
    JSF核心标签库 http://xmlns.jcp.org/jsf/core f: f:actionListenerf:attribute JSF标签独立于任何特定渲染工具包的自定义操作
    传递元素标签库 http://xmlns.jcp.org/jsf jsf: jsf:id 支持HTML5友好标记的标签
    传递属性标签库 http://xmlns.jcp.org/jsf/passthrough p: p:type 支持HTML5友好标记的标签
    复合组件标签库 http://xmlns.jcp.org/jsf/composite cc: cc:interface 支持复合组件的标签
    JSTL核心标签库 http://xmlns.jcp.org/jsp/jstl/core c: c:forEachc:catch JSTL 1.2核心标签
    JSTL函数标签库 http://xmlns.jcp.org/jsp/jstl/functions fn: fn:toUpperCasefn:toLowerCase JSTL 1.2函数标签

    Facelets应用程序的生命周期

    JSF规范定义了JavaServer Faces应用程序的生命周期。以下步骤为基于 Facelets 的应用程序的过程描述。

    1. 生命周期是在客户端使用Facelets创建的网页发出新请求时启动。 JSF创建一个新的组件树或javax.faces.component.UIViewRoot并放入FacesContex

    2. 如果可用的UIViewRoot应用于Facelets, 视图可以填充组件进行渲染。

    3. 新建的视图作为对客户端的响应而被渲染。

    4. 在渲染时,存储此视图的状态用于下一个请求。 存储输入组件和表单数据的状态。

    5. 客户端可以与视图交互,并从JSF应用程序请求另一个视图。 此时,保存的视图从存储状态恢复。

    6. 恢复视图再次通过JSF生命周期,如果没有验证问题,并且没有触发任何操作,最终将生成新视图或重新呈现当前视图。

    7. 如果请求相同的视图,则再次呈现存储的视图。

    8. 如果要求新视图,则继续执行【步骤2】。

    9. 将新视图作为对客户端的响应。

    来源:https://www.yiibai.com/jsf/facelets.html

  • 相关阅读:
    【软件工程】第0次个人作业
    【面向对象设计与构造】第四次博客作业
    【面向对象设计与构造】第三次博客作业
    【面向对象设计与构造】第二次博客作业
    【面向对象设计与构造】第一次博客作业
    软件工程提问回顾与个人总结
    软件工程结对项目博客作业
    软件工程第一次阅读作业
    软件工程第0次个人作业
    面向对象设计与构造第四次总结作业
  • 原文地址:https://www.cnblogs.com/MeiT/p/8850152.html
Copyright © 2011-2022 走看看