`

Java Server Faces 2.0重要新功能以及相关改进简介

    博客分类:
  • jsf
阅读更多
JSF   2.0的最终规范也已经发布了有近一个月了,在近期试用了一些新功能和特性,带来了很多漂亮的特性和愉快的体验。试用之余,迫不及待的希望与众多开发工程师们分享JSF   2.0带来的这些改变,或者说给我们开发带来的便利以及思想上的变革。

         自从JSF   2.0立项起,就一直关注他,除了他承诺的那些技术和思想上的先进性,更多的原因是由于他为适应Web   2.0开发应用而提出的简化开发流程,提供灵活便捷的组件开发模式;或者可以说是由于他承诺在提高开发人员效率方面的努力。在从Mojarra项目获取beta版实现并试用后,我非常兴奋,JSF   2.0的专家组很好的完成了他们的承诺,并有很多超出预期的惊喜。

不废话了,现在就从开发者的角度列出我认为全新引入的最重要的两个特性:

1、     Facelets界面组件模型
         在JSF   2.0中引入了全新的界面表现模型Facelets,可以方便的实现自有组件定制和页面模版化。既强化了JSF提出以来的组件式开发思想,又简化了自有组件的开发。从Tapestry吸收来的模版方式不仅可以让开发工程师像搭积木一样组合一个页面,更可以搭好架子后只在相关页面中只修改需要改变的部分。Facelets还有一大好处,就是将所有java代码从页面标签中移出,让分工更明细了,分工合作本来就是人类发展的一大基石,在这儿也体现了。
         采用全新界面模型后还带来了些辅助功能和好处,其一就是性能的大幅度提升,由于Facelets采用W3C的xhtml规范,是一个严格的xml规范,组件树渲染不再需要如jsp一样编译成class文件后再运行,可以直接渲染,而大大提升了渲染速度,整体性能比jsp应该会提升不少。另外为了支持自有组件开发,JSF   2.0加入了一个resources约定,将自己创建的组件放于此目录下,省掉了xml配置文件中的说明。

2、     内置的Ajax支持
         JSF   2.0吸取了众多开源框架的优点,将Ajax浑然一体的植入了规范中,并且借助Facelets的界面组件,将Ajax的开发完全简化了。大多数的Ajax交互甚至不用在页面中加入任何javascript代码。其中引入标签     f:ajax     和javascipt方法jsf.ajax.request   以及相配套的回调方法。
         为了适应Ajax,在JSF   2.0中引入了一个全新的ManageBean的作用范围View   Scope,此作用范围是在此视图存在时有用,当导航到新的视图时失效。正暗合了ajax当前页面局部更新的道理。

还有一些特性的加强和性能方面的提升也是很重要的:
a、     引入annotation申明managebean,大大简化了xml配置文件
b、     引入resources模型,将css、javascript、图片等资源统一管理,并提供更高效的加载速度。
c、     性能上的提升:根据变化情况保存、恢复视图,而不是每次恢复全部视图。组件缺省为无状态,根据视图重新恢复组件状态,减少ViewState的大小,提高传输性能等。
d、     增强的事件模型和生命周期

         可以说,JSF   2.0是最大的一次更新了,还有很多新的特性就不一一说明了。
分享到:
评论

相关推荐

    JavaServer Faces 2.0, The Complete Reference

    JavaServer Faces 2.0, The Complete Reference 自从JSF 2.0立项起,就一直关注他,除了他承诺的那些技术和思想上的先进性,更多的原因是由于他为适应Web 2.0开发应用而提出的简化开发流程,提供灵活便捷的组件开发...

    JavaServer Faces 2.0完全参考手册(JSF2.0中文版).part1

    《JavaServer Faces 2.0完全参考手册》对所有jsf功能都进行了解释,包括请求处理生命周期、托管bean、页面导航、组件开发、ajax、验证器、国际化和安全。贯穿全书的专家组意见提供了关于jsf设计的内部信息。 推荐...

    JavaServer Faces 2.0完全参考手册(JSF2.0中文版) 1/2

    《JavaServer Faces 2.0完全参考手册》对所有jsf功能都进行了解释,包括请求处理生命周期、托管bean、页面导航、组件开发、ajax、验证器、国际化和安全。贯穿全书的专家组意见提供了关于jsf设计的内部信息。 推荐...

    JavaServer Faces核心编程(第3版,中文完整版)

    《JavaServer Faces核心编程(第3版)》全面透彻地讲解JSF 2.0,指导您驾轻就熟地掌握JSF 2.0的卓越功能,旨在帮助您迅速吸收宝贵的JSF 2.0知识精髓,并得心应手地运用所有JSF 2.0新功能。本书全面介绍基本构件,呈现...

    JavaServer Faces核心编程(第3版)[带书签完整]

    本书全面透彻地讲解JSF 2.0,指导您驾轻就熟地掌握JSF 2.0的卓越功能,旨在帮助您迅速吸收宝贵的JSF2.0知识精髓,并得心应手地运用所有JSF2.0新功能。本书全面介绍基本构件,呈现权威解决方案、提示、技巧和解答,助...

    Java.Server.Faces编程

    《JavaServer Faces核心编程(第3版)》全面透彻地讲解JSF 2.0,指导您驾轻就熟地掌握JSF 2.0的卓越功能,旨在帮助您迅速吸收宝贵的JSF 2.0知识精髓,并得心应手地运用所有JSF 2.0新功能。本书全面介绍基本构件,呈现...

    JSP2.0技术手册pdf(带示例源码).zip

    JavaServer Faces(JSF)技术以及Java Web Services技术的学习 目录 第一章 安装执行环境 1-1 安装 J2SDK 1.4.2 1-2 安装 Tomcat 5.0.16 1-3 安装 JSPBook 站台范例 1-4 安装 Ant 1.6 第二章 Servlet 2.4 简介 2-1...

    JSF2.1+AJAX(jar包+源码)

    JavaServer Faces (JSF) 是一种用于构建 Web 应用程序的新标准 Java 框架。它提供了一种以组件为中心来开发 Java Web 用户界面的方法,从而简化了开发。JavaServer Faces 还引起了广大 Java/Web 开发人员的兴趣。...

    Spring 2.0 开发参考手册

    15.3. JavaServer Faces 15.3.1. DelegatingVariableResolver 15.3.2. FacesContextUtils 15.4. Struts 15.4.1. ContextLoaderPlugin 15.4.2. ActionSupport 类 15.5. Tapestry 15.5.1. 注入 Spring 托管的 ...

    spring chm文档

    15.3. JavaServer Faces 15.3.1. DelegatingVariableResolver 15.3.2. FacesContextUtils 15.4. Struts 15.4.1. ContextLoaderPlugin 15.4.2. ActionSupport 类 15.5. Tapestry 15.5.1. 注入 Spring 托管的 ...

    Spring-Reference_zh_CN(Spring中文参考手册)

    15.3. JavaServer Faces 15.3.1. DelegatingVariableResolver 15.3.2. FacesContextUtils 15.4. Struts 15.4.1. ContextLoaderPlugin 15.4.1.1. DelegatingRequestProcessor 15.4.1.2. DelegatingActionProxy 15.4.2...

    Spring API

    15.3. JavaServer Faces 15.3.1. DelegatingVariableResolver 15.3.2. FacesContextUtils 15.4. Struts 15.4.1. ContextLoaderPlugin 15.4.2. ActionSupport Classes 15.5. Tapestry 15.5.1. 注入 Spring ...

    Spring中文帮助文档

    15.3. JavaServer Faces 15.3.1. DelegatingVariableResolver 15.3.2. FacesContextUtils 15.4. Struts 15.4.1. ContextLoaderPlugin 15.4.2. ActionSupport Classes 15.5. Tapestry 15.5.1. 注入 Spring ...

Global site tag (gtag.js) - Google Analytics