当前位置: 首页 > 图灵资讯 > 技术篇> JSF界面控制层技术面试题(附答案)

JSF界面控制层技术面试题(附答案)

来源:图灵教育
时间:2023-04-04 10:31:41

  从事java长期的程序员应该有经验,也就是说人们正在发展基础Java的Web用户界面仍然需要手工编写大量标签,并考虑页面状态信息的保存和客户端事件的处理。开发难度大,效率低,重用性差。为了解决这些问题,Java Server Faces技术出现了。Java Server Faces简称JSF,所以今天整理了几个JSF界面控制层技术面试题,让我们一起来看看吧。

  1、什么是JSF技术?

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

  2、JSF技术包括哪些部分?

  答:两部分(1)一组JavaAPI用于表示用户界面组件并管理其状态、处理事件和验证输入,支持国际化和可访问性;(2)JSP页面中用于表示JSF 组件的自定义标签库。

  简而言之,JSF的主要部分是GUI组件框架和用于跨不同标记语言或客户端设备描述组件的灵活模型。JSF GUI组件框架使开发人员能够创建JSF应用程序的用户界面。JSF GUI组件包括标准HTML表单控件(如按钮)、数据表等布局组件和更复杂的组件。此外,第三方还可以扩展规范中定义的基本类别,开发额外的GUI组件。

  3、JSF技术有什么优势?

  答:主要优点是既是Java Web用户界面标准严格遵循模型-视图-控制器 (MVC) 框架的设计模式。JSF应用程序更容易管理用户界面代码(视图)与应用程序数据和逻辑(模型)的清晰分离。为了提供JSF上下文的页面访问应用程序数据,防止未经授权或不正确的页面访问,所有用户与应用程序的交互都是前端的“Faces”servlet(控制器)处理。JSF技术实现了应用程序逻辑和表示的完全分离,是真正彻底的MVC模式。

  4、传统JSP开发存在哪些问题?

  答:实现表示层与业务层的分离,这就是J2EE 不幸的是,JSP一直是Web应用的理想 这个目标还没有真正实现。JSP是一种基于Java的Web用户界面开发标准技术“脚本式”在JSP页面中,开发的Web技术混淆了大量用于显示逻辑的技术HTML并用于业务逻辑Java 代码使页面设计无法与程序开发分离;JSP的另一个更大缺陷是脚本不能重用,这往往导致开发者不得不在JSP页面之间复制粘贴,导致同一代码的多个版本,使程序的调试和设计极其复杂。标签库Taglib作为JSP的补充,将Java代码从JSP中剥离,只是有限地实现了性能与逻辑的分离,从未摆脱代码与HTML页面揉捏的问题。此外,JSP还存在其他固有的缺陷,如JSP中很难编译与Servlet相对应的错误信息 找到准确的错误位置,给调试带来了很大的困难。