第六周 javaee 做业

1、JSF 的 life cycle  html

1.1   JSF(JaveServer Faces)生命周期有六个阶段,这六个阶段显示了典型的一个JSF处理一个form GUI虽须要作的事情:java

  • Restore View - 创建或者恢复原来的页面服务器

  • Apply Request Values - 设置请求值为组件的提交的值app

  • Process Validations - 转换和验证组建的值. 设置组建的值为组件提交的值性能

  • Update Model Values - 设置Backing bean的属性值为组件的值 url

  • Invoke Application - 执行actionListeners and actions.spa

  • Render Response - 返回response.code

这里值得提到的一点是若是组件里面有immidiate这个attribute,对于这个组件JSF的生命周期会从Apply Request Value这一步骤直接跳到Render Response而不会进行中间的步骤component

 

图示以下:orm

JSF生命周期 <wbr>(JSF <wbr>Life <wbr>Cycle)

 

 

或者以下图:

 

1.2  对JavaServer Faces生命周期的进一步概述:

 JavaServer Faces应用程序的生命周期从客户端对页面发出HTTP请求开始,到服务器响应页面时结束,而后转换为HTML。

 生命周期能够分为两个主要阶段:执行和呈现。执行阶段进一步划分为子阶段,以支持复杂的组件树。该结构要求将组件数据转换和验证,处理组件事件,并以有序的方式将组件数据传播到bean。

 JavaServer Faces页面由一棵名为view的组件树表示。在生命周期中,JavaServer Faces实现必须在考虑从先前提交的页面中保存的状态时构建视图。当客户端请求一个页面时,JavaServer Faces实现执行几个任务,例如验证视图中组件的数据输入,并将输入数据转换为在服务器端指定的类型。

 JavaServer Faces实现执行全部这些任务,由于JavaServer中的一系列步骤都面临请求-响应生命周期。下图说明了这些步骤。

Flow diagram of Faces request and Faces response, including event and validation processing, error handling, model updating, application invocation.

 

 

2、FACELETS 的  life cycle

(1) 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. 将新视图做为对客户端的响应。

 

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

它包括如下功能:

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

优势

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