基于JavaServerTM Faces和DAO模式的大型设备采购系统
2015-02-01 01:37
导读:计算机应用论文论文,基于JavaServerTM Faces和DAO模式的大型设备采购系统论文样本,在线游览或下载,科教论文网海量论文供你参考:
摘 要 文章先介绍了JavaTM EE家族中的重要成员——JavaServerTM Fac
摘 要 文章先介绍了JavaTM EE家族中的重要成员——JavaServerTM Faces这一技术。它位于JavaTM EE的Web层面,为Web程序员提供了基于组件和事件驱动的编程方式,这将改变传统的Web程序编写方式。然后,本文分析了大型设备采购系统的固有特性,并介绍了如何结合JSF技术和DAO模式开发大型设备的采购系统。 关键词 JavaServerTM Faces;JSF;大型设备采购;信息系统1 前言 信息技术、计算机网络技术、数据库技术和
软件工程技术的高速发展,使得计算机信息系统得到了长足的进步。高速网络和大型关系数据库的成熟,为构建计算机信息系统提供了良好的基石;软件工程技术的发展,使得人们可以设计并构建出灵活、功能强大和高质量的信息系统——基于MVC(Model-View-Controller)架构模式的B/S系统,就是一个成熟并且高效的结构。有很多技术都应用了MVC这一架构模式,JavaServerTM Faces技术就是其中的一种,开发者可以利用JSF技术开发出设计良好的系统。2 MVC架构模式 MVC模式将系统分割为三个独立的部分:Model、View和Controller。Model代表应用数据和业务逻辑,View负责将数据显示给用户,Controller处理与用户的交互。三个部分松散地耦合在一起,通过变更通知机制来保持同步,其原理如图1所示:

图 1 MVC架构模式示意图 MVC模式使系统各部分之间的耦合度降低,内聚度提高。这种设计方式能够有效地提高系统的可维护性。 Web应用程序依赖于HTTP(超文本传输协议)。HTTP是一个无状态的协议,它本身没有提供会话状态保存机制。因此,适应于Web程序的MVC架构模式受到了一定的限制,同时也必须做一些修改,这就是Model 2模型。在这个模型中,有一个前端Servlet作为Controller,侦听特定的URL请求。在收到请求后,Servlet与作为Model的JavaBean交互,再决定向哪一个View转发请求,最终再显示给用户。其结构如图2所示:

图 2 Model 2的结构图 HTTP的无状态性导致了这么一种结果:在Model 2中,Model的变更无法立即传播到相应的View和Controller。3 JSF架构3.1 JSF的结构 JSF是为基于Java技术的Web应用程序所设计的服务器端用户组件框架,它基于Model 2架构,明确定义了Model、View和Controller,其结构如图3所示。 JSF的核心是建立在上述架构上的User Interface Model(用户界面模型)。这个模型直接决定了JSF架构不同于传统Web框架,它提供了基于事件的编程方式。用户界面模型由这几部分组成: ● User Interface Component Classes(用户界面类):这些类代表了用户界面组件和用户界面组件相关的操作接口,如保存状态、维护引用、事件的处理和呈现组件等。 ● Component Rendering Model(组件呈现模型):组件的功能由组件的类决定,而组件的显示可以由专门的呈现器来决定。这种功能和呈现分割的设计意味着:可以通过简单地替换呈现器,获得不同的显示效果,或者通过不同的呈现器,来适应不同的客户端。 ● Conversion Model(转换模型):某些用户界面数据,如输入框中的数据,是与服务器端的数据对象相联系的。服务器端的数据对象是有类型的,而用户界面组件内的内容全部都是String类型的,如果这两者数据类型不相容,就必须有一个转换器。转换模型定义了这方面的内容,程序员可以根据需要为用户界面组件搭配合适的转换器。

图 3 JSF结构图 ● Validation Model(验证模型):这个模型定义了如何对来自于请求的数据进行验证。程序员可以通过它定义数据的格式。 ● Event and Listener Model(事件和监听模型):通过事件和监听模型,JSF技术提供了基于事件驱动的编程方式——用户界面产生event(事件),注册在其上的listeners(监听器)捕获这个事件,执行事先确定的任务。事件和监听模型提供了Listener类作为监听器的接口,一旦一个应用程序提供了对Listener类的实现,并且向相应的用户界面组件进行注册,就可以得到相应的通知。JSF支持三种事件:值变化事件、动作事件、数据-模型事件。3.2 JSF的请求处理生命周期 JSF系统的组成元素由用户界面模型来定义,这些元素如何协作则是由JSF的请求处理生命周期来定义的,这个步骤也被称为JSF页面的生命周期,如图4所示: