JSF的技术与组件是怎样的

发布时间:2021-12-14 10:50:37 作者:柒染
来源:亿速云 阅读:130

JSF的技术与组件是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

JSF是由Java Community Process (JCP)制定的一个Web应用框架标准。JSF具有良好定义的请求处理生命周期和丰富的组件层次结构,旨在推动基于Java的Web用户界面开发的简易性。利用JSF提供的可重用、可扩展、基于组件的用户界面框架,在快速开发工具RAD的支持下,可以通过拖放组件的方式对Web用户界面进行可视化编辑,将用户界面上的组件与一个数据源绑定,并将客户端用户界面产生的事件交给服务器端处理,从而大大降低基于Java的Web用户界面的开发难度,提高开发效率。

JSF的主要优势之一就是它既是Java Web用户界面标准又是严格遵循模型-视图-控制器 (MVC) 设计模式的框架。用户界面代码(视图)与应用程序数据和逻辑(模型)的清晰分离使JSF应用程序更易于管理。为了准备提供页面对应用程序数据访问的JSF 上下文和防止对页面未授权或不正确的访问,所有与应用程序的用户交互均由一个前端“Faces”servlet(控制器)来处理。 JSF技术做到了应用程序逻辑和表示的完全分离,是真正彻底的MVC模式。

JSF是构建Web应用程序的新标准Java框架,可以依据JSF的框架标准手工书写Web应用程序,以文本方式像写HTML或JSP程序一样实现Web用户界面的设计;同时在开发、运行以及调试前还需要搭建系统运行平台。

这样做的缺点是不能充分体现可视化开发的便捷和高效,一般是在分析Web应用程序的结构时使用。

(1)视图设计

方便、快捷地开发基于JSF的Web应用程序,是在JSF提供了一组丰富的、可重用的服务器端用户界面组件的条件下实现的。在开发工具的支持下,用户可以很容易地在可视化环境中利用这些组件构建Web用户界面,处理组件的数据校验、事件处理等用户界面管理问题。

设计每个需要的JSP页面,在页面中放置JSF的内置组件,并将组件与应用层的JavaBean绑定。利用RAD工具能通过拖放组件的方式轻松实现页面文件,不需要手写大量代码。开发工具自动生成页面对应的java文件,在文件中定义好了页面的JSF组件及其getter、setter方法以及JSF组件的“action”属性对应的方法等。程序员可以方便地在已有程序的基础上修改、调试。

(2)模型设计

JSF技术做到了应用程序逻辑和表示的完全分离。在模型设计部分,程序员只需要考虑程序的逻辑功能,不需要考虑数据的表现形式。JSF模型是通过JavaBean程序来实现的。

JSF模型是根据页面中组件需要处理的业务逻辑而设计实现的。在JSF中使用JavaBean可以直接在JSF页面中声明或者在配置文件faces-config. xml中声明。

如果手工部署应用,则编译完成的JavaBean文件应放到Web应用程序的WEB- INF\classes目录下(TOMCAT环境下);如果借助于RAD开发工具,设计人员就不需要考虑部署的细节,开发工具会自动把实现了业务逻辑的 JavaBean文件(未编译的java文件和编译成功后的jar包)成功地部署在相关位置。

(3)控制器设计

JSF的控制器设计是在配置文件中完成的,相关的主要有两个文件:web.xml文件和faces- config.xml文件(均在WEB-INF目录下)。web.xml文件主要用于控制JSF的生命周期,实现部署描述符。faces- config.xml文件实现导航,在文件中控制页面之间的跳转流程。

配置步骤是首先配置Web应用程序的web.xml文件,然后是配置JSF的控制文件faces-config.xml文件。这两个文件格式固定,在IDE环境中这个过程由工具自动完成,不需要设计人员的干预,即使手工配置也比较简单。

JSF技术重点在View部分,它实现了Web应用程序设计角色的完全分离。JSF网页设计者只需要专注于页面的设计;应用程序开发者主要关心Model部分的JavaBean的开发;程序的流程控制则由faces-config.xml专门配置。

总结

JSF是基于Java 的Web 应用开发领域里提供了一个可重用、可扩展、基于组件、工具友好的服务器端UI 框架。在支持JSF 的RAD开发工具中,人们可以像使用Visual Studio. NET一样方便快捷地构建Web 用户界面,大大降低了利用Java技术实现Web 用户界面的难度,提高了开发效率。

JSF具有强大的组件体系和事件处理系统,完全实现了MVC模式的应用架构,使得基于Java的Web用户界面程序开发难度大大降低,提高了开发效率,非常适用于Web页面的开发。

JSF是一个开放的标准,具有很好的可扩展性。依照JSF 的规范,用户完全可以根据需求定制自己的用户界面组件、事件处理器、数据校验和转换组件等,这些组件和标准的JSF组件一样是可重用的。JSF API 是直接架构在Servlet API 之上的,因此JSF 用户界面组件的呈现并不局限于特定的脚本技术或标记语言。表示层完全可以采用JSP 之外的技术。

在众多的J2EE表现层框架技术中,JSF表现出其旺盛的生命力。尽管JSF技术还有不少问题,但随着JSF技术的不断成熟和版本更新,其必将获得越来越多的应用。

JSF框架搭建(MyEclipse)(实现用户登录)

1.新建一个web project,选择Java EE 5.0选项,输入项目名称:JSFLoginDemo(例),点击完成。

2.菜单中选择MyEclipse,Project Capabilities--->Add JSF Capabilities,点击完成。

3.src下新建一个资源文件,命名Messages.properties(用处:做显示的国际化),写入
login_label=Please Login:
login_label=User name:

4.src下建个包,包名为com.jsfdemo

5.添加受管Bean(New Managed Bean),命名UserBean,Class:com.jsfdemo.UserBean,Scope:session,添加 userName,Property Kind:Simple,Class:java.lang.String,完成。再添加password,Property Kind:Simple,Class:java.lang.String,完成。下面两项打钩----->Next---->finish, 检查配置信息。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

推荐阅读:
  1. JSF与JSP的区别
  2. JSF与Struts的区别是什么

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

jsf

上一篇:如何分析Seam Remoting API和Ajax4jsf

下一篇:如何利用R语言的ggplot2包绘制GO富集柱形图

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》