技术开发 频道

JavaServer Faces入门开发实例


IT168技术文档】 
    为什么要使用JavaServer Faces 

    Web应用程序的开发与传统的单机程序开发在本质上存在着太多的差异,Web应用程序开发人员至今不可避免的必须处理HTTP的细节,而HTTP无状态的(stateless)本质,与传统应用程序必须维持程序运行过程中的信息有明显的违背,再则Web应用程序面对网站上不同的使用者同时的存取,其执行线程安全问题以及数据验证、转换处理等问题,又是复杂且难以解决的。 
    
    另一方面,本质上是静态的HTML与本质上是动态的应用程序又是一项违背,这造成不可避免的,处理网页设计的美术人员与程序设计人员,必须被彼此加入至视图组件中的逻辑互相干扰,即便一些视图呈现逻辑以标签的方式呈现,试图展现对网页设计美术人员的亲切,但它终究必须牵涉到相关的流程逻辑。 

    有很多方案试着解决种种的困境,而各自的着眼点各不相同,有的从程序设计人员的角度来解决,有的从网页设计人员的角度来解决,各种的框架被提出,所造成的是各种不统一的标签与框架,为了促进产能的集成开发环境(IDE)难以整合这些标签与框架,另一方面,开发人员的学习负担也不断的加重,他们必须一人了解多个角色的工作。 

    当前用于开发Web应用程序的两种流行的技术是: 
    “快速开发”风格,使用可视化开发环境,如Microsoft ASP.NET。 
    “硬核编码”风格,编写大量支持高性能后端的代码,例如J2EE(即Java 2企业版本)。 

    J2EE是一种很吸引人的平台,它高度可扩展性,可移植到多个平台上,而起获得了很多厂商的支持。另一方面,ASP.NET无需乏味的编程就可以很容易的创建漂亮的用户界面。对程序于来说,当然希望两者都兼有:高性能的后端核容易编程的用户界面。 

    JavaServer Faces的目的就是将快速用户界面开发引入到服务器端Java。 

    如果用户熟悉客户端Java开发,可以将JSF认为是“适用于服务器端应用程序的Swing”。如果以前使用国JavaServer Pages(JSP),则可发现JSF提供了很多JSP开发人员必须自己实现的应用。如果熟悉服务器端框架,例如Struts,则可发现JSP使用的是类似的结构。 

    JSF具有下列部件: 
    -一套预制的UI组件 
    -事件驱动的编程模型 
   - 使得第三方开发者能够支持其他组件的组件模型 
   - JSF提供了事件处理和组件构成所需要的所有代码。很幸运的是,应用程序员可以忽略这些细节,而专注于应用程序的逻辑。
0
相关文章