基于J2EE的货物管理系统的设计与实现论文.doc
《基于J2EE的货物管理系统的设计与实现论文.doc》由会员分享,可在线阅读,更多相关《基于J2EE的货物管理系统的设计与实现论文.doc(65页珍藏版)》请在咨信网上搜索。
华北水利水电学院本科毕业论文(设计)开题报告 2010年 3 月 15 日 学生姓名 张亮 学号 200814511 专业 计算机科学与技术 题目名称 基于J2EE的货物管理系统的设计与实现 课题来源 自选 主 要 内 容 一 、课题背景及设计目标 物流货物管理系统能够为用户提供充足的信息和快捷的查询手段。使用计算机对物流货物资料进行管理,给应用者带来很多方便,例如检索迅速、查找方便、可靠性高、存储量大、保密性好、成本低等。这些优点能够极大地提高物流货物管理的效率,同时,这也是企业的科学化、正规化管理以及与世界先进管理技术接轨的重要条件。 系统的实质是对信息处理和利用的全过程。系统管理的现代化就是要求信息现代化。以计算机为基础的现代信息处理的产生和发展,正是物流货物管理现代化的客观要求。随着计算机在中国的普及,越来越多的企业意识到信息系统对自身发展的重要作用,投入大量的人力、物力、财力进行信息系统的建设。 企业应用物流货物管理系统的主导因素很多,但从深层次来看,可以从以下几方面来分析: (1) 提供良好的人事信息内容整合机制。知识经济中企业分散、混乱的人事信息形成不了竞争力,必须要将其整合成为有组织的内容才能充分发挥其价值。 (2) 提高企业内外部人员的协作效率。物流管理对企业内外部而言,能够很好地做到信息的有效共享和协同商务。可以说,有效的物流货物管理是实现良好的整合关系管理的重要保证,提高企业在市场竞争中的生存能力。 (3) 企业为了有效地响应内部人员和外部客户,货物管理信息化是必不可少的,企业信息化已成为企业在竞争中处于不败之地的有效手段之一。 二 、系统功能 第一部分:根据设计目标,初步设定系统要实现的功能如下: 本系统根据物流货物管理的特点,可以将其分为收货管理、配送管理、查询3个部分,功能模块如下图所示。 1) 收货管理 收货管理菜单对应了物流公司的收货部门的全部日常业务。其中包括:收货登记、未估价货票、到货确认、损货登记四大功能。 2) 配送管理 配送管理菜单对应了物流公司的配送部门的全部日常业务。其中包括车辆登记、司机登记、省际运输、市场配送四大功能。 3) 查询 查询是对公司的日常业务通过查询或图表的形式显示给用户,以方便客户了解业务信息。其中包括货票查询。 第二部分:数据库的设计和实现 该部分前期设计出概念层的数据结构,后期生成SQL Server 2000脚本,从而达到创建数据库的目的,由于该系统涉及到的方面较多,抽象出的实体多,关系复杂,所以要通过一定数量的数据冗余,减少多表链接,从而提高系统的数据访问效率。 将数据库概念结构转化为Microsoft SQL Server 2000系统所支持的实际数据模型,也就是数据库的逻辑结构,系统数据库名称为BeltLine,数据库BeltLine中包含用户信息,货物信息、车辆信息,司机信息等。通过对系统进行仔细分析以后,需要14个数据表来实现系统所要储存的数据。 采取的主要技术路线或方法 (1) 开发工具:Myeclipse 6.5,基于J2EE开发平台,WINDOWS开发环境 (2) 编码语言:Java,SQL (3) 数据库:SQL Server 2000 预期的成果及形式 (1) 论文 撰写相关设计文档和毕业论文 (2) 软件作品 《基于J2EE的物流货物管理系统的设计与实现》 时间安排 第 1~4 周:准备(初步学习相关的编码语言以及需求分析),需要解决的是对平台的熟悉和对SSH框架的学习。 第 5~8 周:系统设计与系统实现(对该系统进行总体框架设计、详细设计,然后建立数据库。弄清数据关系。再将该系统的框架下进行编码,实现预期的功能和页面开发)。 第 9~12周:系统测试,并完成毕业论文的编写、修改。 第13~15周:准备答辩及正式答辩。 指导教师意见 本课题以物流信息管理系统中货物管理系统为目标,以实现货物流管理计算机化、网络化,从而提高物流货物管理的效率,具有较强的现实意义;同时,本课题遵循J2EE准则,设计与实现了轻量级J2EE平台,具有一定的技术特色;另外,通过对系统的业务和需求进行分析,该系统工作量适当,难度适中,适合作为本科毕业设计。 签 名: 年 月 日 备注 [1] 徐进明.JSP网站开发技术[M].北京:清华大学出版社,2002 [2] 孙卫琴.精通Struts:基于MVC的java Web设计与开发.电子工业出版社[M],2004 [3] Deitel.Java程序设计教程[M].北京:清华大学出版社,2006 [4]赵文靖.Java程序设计基础与设计上机指导[M].北京:清华大学出版社,2006 [5]王立丰.J2EE课程设计指导[M].北京:北京大学出版社,2008 [6]耿祥义.JSP基础教程[M].北京:清华大学出版社,2004 [7]杨少波,顾益军等.J2EE项目实训——Spring框架技术[M].北京:清华大学出版社,2008 [8]杨少波等.J2EE项目实训——Hibernate框架技术[M].北京:清华大学出版社,2008 [9]杨少波等.J2EE项目实训——Struts框架技术[M].北京:清华大学出版社,2008 [10] 邹羚.基于SSH的J2EE架构在信息管理中的应用[J].商场现代化,2007,21(6):22-23 [11]陈天河.Struts,Hibernate,Spring集成开发宝典[M].北京:电子工业出版社,2007 [12]张靖.基于J2EE平台的Web应用研究[J].成都大学学报,2006,12(4):291-295 摘 要 21世纪,随着计算机科学的发展,数据库技术在Internet中的应用越来越广泛,为广大网络用户提供了更加周到和人性化的服务。个性化已逐渐成为当今Web应用的潮流。 本文阐述了如何构造一个B/S结构的物流货物管理系统,对B/S结构、JSP技术以及SQL Server原理进行了较深入的论述。阐述了对物流货物管理系统的需求分析、功能模块划分、数据库模式分析,功能模块的实现过程。在此基础上,对所应用的关键技术进行描述。最后,对程序调试与调试结果进行论述。 本系统结合因特网的发展、应用现状,采用了基于WEB的三层体系架构,即浏览器——WEB应用服务器——数据库服务器。通过对系统工作流程进行详细需求分析,建立了系统的功能模型和数据流模型。确定系统的数据模型为关系数据模型,进行了分析、设计、画出了E-R图。后台数据库选用了SQL Server 2000来实现。WEB开发采用当前流行的JSP(Java Server Pages,动态网页技术)技术,JSP页面通过SSH(Struts and Spring and Hibernate)整合技术,连接SQL Server 2000数据库,实现了浏览器端和服务器端的程序。系统经过测试,运行效果稳定、操作方便、快捷,能较好的为该系统的用户服务。 关键词 货物管理;SSH;J2EE Abstract Along with the development of the computer science in 21 centuries, the database technique is more and more extensive in the application in the Internet, providing the more thoughtful and humanized service for the large network customer. Characteristic have already become gradually the current as the application of Web nowadays. This paper describes how to struct a system to have set forth goods to let management adopt B/S structure's, the paper describes the B/S structure and SQL Server, JSP technology principles. The article complete the needs analysis of an system for the management applications for communication which on the web, functional modules division and database model analysis. The technology is in progress here to what be applied key on the basis, describe that. Final, comment that to procedure debugging with testing result being in progress. Internet, application status, using a Web-based three-tier system structure, the browser Web application servers database servers. Through the teacher evaluation process needs to conduct a detailed analysis, establish a system of the model and data model. Identify the data model for relational data model for the analysis, design, which depicts the E-R charts. Selection of the background database SQL Server 2000 is to be achieved. Web develops using current popular JSP (Java Server Pages, Dynamic web technology) technology, JSP pages through SSH (Struts and Spring and Hibernate) technology to connect SQL Server 2000 database. It has realized a browser holding the procedure really with the server. Through the testing, the operation result of the system is steady .It is easy to operate and the speed is fast. It can give a good service for the users who use the system. Key Words Goods Manage; SSH; J2EE 目 录 第1章 绪论 1 1.1 研究背景及意义 1 1.1.1 研究背景 1 1.1.2 研究意义 2 1.2 研究内容 2 第2章 关键技术 4 2.1 J2EE平台概述 4 2.1.1 J2EE平台 5 2.1.2 MVC设计模式 6 2.2 SSH整合技术 7 2.2.1 Struts框架 7 2.2.2 Spring框架 8 2.2.3 Hibernate框架 10 2.2.4 SSH框架整合 11 2.3 AJAX技术 12 第3章 系统需求分析 15 3.1 系统概述 15 3.2 可行性研究 16 3.3 系统用例分析 17 3.3.1 统一建模语言(UML)简介 18 3.3.2 系统分析 19 第4章 货物管理系统设计 21 4.1 数据库的设计 21 4.1.1 数据库SQL Server 2000简介 21 4.1.2 数据库结构设计 23 4.1.3 操作数据库 27 4.2 系统功能设计 29 4.2.1 登录模块 29 4.2.2 收货管理模块 30 4.2.3 配送管理模块 31 4.2.4 查询模块 32 第5章 货物管理系统实现 33 5.1 登录模块 33 5.2 收货管理模块 33 5.3 配送管理模块 37 5.4 查询模块 41 第6章 总结 42 参考文献 43 致谢 44 附录 45 外文翻译 45 计算机源程序 52 第1章 绪论 随着信息全球化的加快,现在企业的专业分工和协作对现代物流提出了越来越高的要求,信息化、自动化、网络化、智能化、柔性化已成为现在物流的鲜明特征。随着物流行业的发展壮大,物流的信息化日益被从业者和信息系统提供者所重视。同时,现代企业的供应链也提醒着物流企业,若想在激烈的市场竞争中占据绝对优势,必须要求企业及时准确得掌握客户的需求,同时对客户的需求作出快速的反应,在最短的时间内以最大的限度挖掘和优化物流资源来满足客户的需求,从而建立高效的数字化物流经济。 1.1 研究背景及意义 1.1.1 研究背景 随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现物流货物管理势在必行。对于一般的大型、中型企业来说,物流货物管理的对象是一个或多个单位中员工的基本信息,这些信息是在随时变化的。利用计算机支持企业高效率完成物流货物管理的日常事务,是适应现代企业制度要求、推动货物管理走向科学化、规范化的必要条件。而物流货物管理是一项繁琐而又细致的工作,一般不允许出错,计算机进行货物管理工作,不仅能够保证货物登记情况的准确无误,查询的方便快捷,而且还可以利用计算机对货物信息进行统计处理。 物流货物管理系统能够为用户提供充足的信息和快捷的查询手段。使用计算机对物流货物资料进行管理,给应用者带来很多方便,例如检索迅速、查找方便、可靠性高、存储量大、保密性好、成本低等。这些优点能够极大地提高物流货物管理的效率,同时,这也是企业的科学化、正规化管理以及与世界先进管理技术接轨的重要条件。 因此,企业只有建立跨平台的物流货物管理系统,才能真正提升信息应用的效益。 1.1.2 研究意义 系统的实质是对信息处理和利用的全过程。系统管理的现代化就是要求信息现代化。以计算机为基础的现代信息处理的产生和发展,正是物流货物管理现代化的客观要求。随着计算机在中国的普及,越来越多的企业意识到信息系统对自身发展的重要作用,投入大量的人力、物力、财力进行信息系统的建设。 企业应用物流货物管理系统的主导因素很多,但从深层次来看,可以从以下几方面来分析: (1) 提供良好的人事信息内容整合机制。知识经济中企业分散、混乱的人事信息形成不了竞争力,必须要将其整合成为有组织的内容才能充分发挥其价值; (2) 提高企业内外部人员的协作效率。物流管理对企业内外部而言,能够很好地做到信息的有效共享和协同商务。可以说,有效的物流货物管理是实现良好的整合关系管理的重要保证,提高企业在市场竞争中的生存能力; (3) 企业为了有效地响应内部人员和外部客户,货物管理信息化是必不可少的,企业信息化已成为企业在竞争中处于不败之地的有效手段之一。 1.2 研究内容 随着时代的进步,企业也逐渐变得庞大起来,如何管理物流货物管理的信息,成为企业管理中的一个大的问题,本文根据物流实际业务需求,结合“整体规划、分步实施”的理念,研究采用B/S模式、基于J2EE的物流货物管理系统,基本上能够满足现代物流货物管理的需基于J2EE分层的体系结构基础上,利用性能稳定的SSH框架,很大地缩短了系统的开发周期,并降低了系统的开发成本,同时使开发的系统具有很强的易扩展、易维护、跨平台等特性。 该系统整个的研究过程,遵循软件工程原则,沿需求分析、系统设计、系统实现和系统测试顺序开展,主要完成以下工作: (1) 分析物流货物管理系统的功能性和非功能性需求; (2) 研究物流货物管理系统的总体设计目的和设计思想,确定高内聚低耦合的物流货物管理系统的设计框架。系统采用基于J2EE的分层体系结构,采用SSH框架组合。用Struts框架来实现表示层,Spring框架来实现业务逻辑层,Hibernate框架来实现数据持久层; (3) 介绍物流货物管理系统的开发环境,确定系统设计方案,研究权限管理,并实现角色管理,使具有不同角色的系统用户具有不同的访问系统权限。根据系统的业务流程设计实现了系统的操作界面; (4) 对物流货物管理系统进行单元测试、功能测试和性能测试,研究物流货物管理系统的测试方案,并给出测试分析。 第2章 关键技术 2.1 J2EE平台概述 Java2平台目前有3个版本,它们分别是适用于创建服务器应用程序和服务的Java2平台企业版(Java 2 Platform Enterprise Edition,J2EE)、适用于桌面系统的Java2平台标准版(Java 2 Platform Standard Edition,J2SE)、适用于小型设备和智能卡的Java2平台Micro版(Java 2 Platform Micro Edition,J2ME)。J2EE技术的基础核心是Java平台或者说是Java2平台的标准版,J2EE不仅仅极大地巩固了标准版中固有的诸多优点,同时还提供了对同时还提供了对Java Servlets API、JSP(Java Server Pages)以及XML技术的全面支持[1]。 J2EE是一个在Java2平台上建立的企业级应用解决方案。J2EE技术的基础是Java2平台,因此J2EE不仅拥有J2SE平台的所有功能,同时还提供了包括Servlet,JSP,XML等相关技术的全面支持方案,它的最终目标是成为支持企业级应用开发的完整体系结构,从而极大简化企业解决方案在设计、开发、部署和管理等各方面的问题。目前,J2EE已经成为企业级开发的工业标准和首选平台。J2EE是一个开放的、基于标准的平台,可以开发、部署和管理N层结构的、面向Web的、以服务器为中心的企业级应用,它是利用Java2平台来简化与多级企业解决方案的开发、部署和管理相关的诸多复杂问题的应用体系结构。 J2EE平台采用一个多层次分布式的应用模式。J2EE应用可以由三或四个层次组成,因为它们是被分布在三个不同的地点:客户端机器、J2EE服务器和数据库或后端的传统系统服务器。三层架构应用是对标准的客户端/服务器应用架构的一种扩展,即在客户端应用和后台存储之间增加一个多线程应用服务器,如图2-1所示。 图2-1 J2EE层次结构 客户层是为客户提供应用服务的图形界面,有助于用户理解和高效的定位应用服务。业务层位于客户层和数据层之间,专门为实现企业的业务逻辑提供了一个明确的层次,在这个层次封装了与系统关联的应用模型,并把用户表示层和数据库代码分开。这个层次提供客户应用程序和数据服务之间的联系,主要功能是执行应用策略和封装应用模式,并将封装的模式呈现给客户应用程序[2]。数据层是三层模式中最底层,它用来定义、维护、访问和更新数据并管理和满足应用服务对数据的请求。 2.1.1 J2EE平台 J2EE体系包括JSP、Servlet、WEB SERVICE等多项技术。这些技术的出现给电子商务时代的WEB应用开发提供了一个非常有竞争力的选择。怎样把这些技术组合起来,形成一个适应项目需要的稳定架构是项目开发过程中一个非常重要的步骤。 J2EE体系结构架提供了中间层集成框架,它用来满足高可用性、高可靠性以及可扩展性的应用需求。通过J2EE所提供的统一开发平台,可以极大降低开发多层应用的费用和复杂度,并且能够提供对现有应用程序集成的强有力的支持,并且具有良好的向导支持打包特性和部署应用特性,支持添加目录功能,并对安全机制进行了增强,显著提高了性能[3]。 J2EE平台由一整套服务、应用程序接口和协议构成,它对于开发基于Web的多层应用提供了功能支持,下面简单的描述一下J2EE中的几种关键技术: (1) EJB(Enterprise Java Beans):EJB提供了一个框架来开发和实施分布式商务逻辑,由此很显著地简化了具有可伸缩性和高度复杂的企业级应用的开发。EJB规范定义了EJB组件在何时如何与它们的容器进行交互作用。容器负责提供公用的服务,例如目录服务、事务管理、安全性、资源缓冲池等。但EJB并不是实现J2EE的唯一途径。正是由于J2EE的开放性,使得有的厂商能够以一种和EJB平行的方式来达到同样的目的。 (2) JSP(Java Server Pages):JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端所请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。 (3) Servlet:Servlet是一种小型的Java程序,它扩展了Web服务器的功能。Servlet程序在服务器端运行,动态地生成Web页面[4]。与传统的CGI和许多其他类似CGI的技术相比,Java Servlet具有更高的效率,更容易使用,功能更强大,具有更好的可移植性,更节省投资。 2.1.2 MVC设计模式 MVC模式是"Model-View-Controller"的缩写,中文翻译为"模式-视图-控制器即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。MVC应用程序总是由这三个部分组成。Event(事件)导致Controller改变Model或View,或者同时改变两者。只要Controller改变了Models的数据或者属性,所有依赖的View都会自动更新。类似的,只要Controller改变了View,View会从潜在的Model中获取数据来刷新自己[5]。Struts架构只实现了MVC的View和Controller两个部分,Model部分需要开发者自己来实现。 1) 模型(Model) 模型是指业务流程、状态的处理以及业务规则的制定,是MVC最主要的核心,它接受视图请求的数据,并返回最终的处理结果。对一个开发者来说,就可以专注于业务模型的设计。MVC设计模式告诉开发人员,把应用的模型按一定的规则抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据[6]。MVC并没有提供模型的设计方法,而只告诉开发人员应该如何组织管理这些模型,以便于模型的重构和提高重用性。 2) 视图(View) 视图代表用户交互界面,对于Web应用来说,包括HTML、XHTML、XML和Applet等形式,且随着应用的复杂性和规模性的提高,界面的处理也变得具有挑战性。MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括业务流程的处理。业务流程的处理交予模型(Model)处理。 3) 控制器(Controller) 控制器从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层接受请求后,并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型。 2.2 SSH整合技术 2.2.1 Struts框架 Struts是一个Web Framework,伴随着软件开发的发展,在多层的软件开发项目中,可重用、易扩展的,而且是经过良好测试的软件组件,越来越为人们所青睐。这意味着人们可以将充裕的时间用来分析、构建业务逻辑的应用上,而非繁杂的代码工程。于是人们将相同类型问题的解决途径进行抽象,抽取成一个应用框架。Framework的体系提供了一套明确机制,从而让开发人员很容易的扩展和控制整个framework开发上的结构。 Struts由一组相互协作的类(组件)、Serlvet以及JSP Taglib组成。基于Struts构架的web应用程序基本上符合JSP Model的设计标准,可以说是MVC设计模式的一种变化类型。Struts有其自己的控制器(Controller),同时整合了其他的一些技术去实现模型层(Model)和视图层(View)[7]。在模型层,Struts可以很容易的与数据访问技术相结合,包括JDBC和Object RelationBridge。在视图层,Struts能够与JSP,Velocity Templates,XSL等等这些表示层组件想结合。Struts框架内部运行机制图如图2-2所示。 图2-2 Struts框架内部运行机制图 2.2.2 Spring框架 Spring框架是个优秀的多层J2EE系统框架,目的是用于建立“快装式企业应用”,它为企业级应用提供了一个非常轻量级的解决方案,大大降低了应用开发的难度和复杂度,提高了开发效率。 Spring框架是由OpenSource开发的一个优秀的多层J2EE系统框架,它为企业级应用提供了一个非常轻量级的解决方案。你可以把Spring当作一个一站式企业应用,或者一个标准开发组件,根据自己的需要,只取用它的部分组件使用而无须涉及其他。 Spring的核心是个实现了IoC(Inversion of Control)模式的轻量级容器,其目标是实现一个全方位的整合框架,在此框架下实现多个子框架的组合,而这些子框架又可以彼此独立,也可以使用其它的框架方案加以替代。Spring希望提供一站式的框架整合方案。同时Spring框架实现对AOP(Aspect Oriented Programming)思想的支持,这大大增加了框架的扩展能力。 Spring的核心概念IoC的具体体现为:高层模块不依赖底层模块,实现必须依赖抽象,应用程序不应依赖于容器,而是容器服务于应用程序。它可以帮助开发者完成组件之间的依赖关系注入,使得组建之间的依赖达到最小,进而提高组件的重用性。Spring是个低侵入的框架,其中的组件并不会意识到它正置身于Spring中,这使得组件可以轻易的从框架中脱离,而几乎不用任何修改,反过来说,组件也可以简单的方式加入到框架中,使得组件甚至框架的整合变得很容易。图2-3是Spring的整体框架。 图2-3 Spring的整体框架 Core封装包是框架的最基础部分,提供IoC和依赖注入特性。这里的基础概念是BeanFactory,它提供对Factory模式的经典实现来消除对程序性单例模式的需要,并真正地允许你从程序逻辑中分离出依赖关系和配置。 构建于Core封装包基础上的Context封装包,提供了一种框架式的对象访问方法,有些像JNDI注册器。Context封装包的特性得自于Beans封装包,并添加了对国际化的支持,事件传播,资源装载的方式和Context的透明创建,比如说通过Servlet容器[8]。 DAO提供了JDBC的抽象层,它可消除冗长的JDBC编码和解析数据库厂商特有的错误代码。并且,JDBC封装包还提供了一种比编程性更好的声明性事务管理方法,不仅仅是实现了特定接口,而且对所有的POJOs(plain old Java objects)都适用。 ORM封装包提供了常用的“对象/关系”映射APIS的集成层。其中包括JPA、JDO、Hibernate。利用ORM封装包,可以混合使用所有Spring提供的特性进行“对象∕关系”映射,如前边提到的简单声明性事务管理。 2.2.3 Hibernate框架 Hibernate 控制的是持久层,这里通常是程序最容易失控的地方。这里通常是程序最容易失控的地方。开发者总是低估构建他们自己的持久框架的挑战性。系统内部的持续层不但需要大量调试时间,而且还经常缺少功能使之变得难以控制,这是持久层的通病。Hibernate为Java提供了OR持久化机制和查询服务,Hibernate将在Java类里使用的HQL语句转换为SQL语句,利用JDBC驱动进而操作数据源,完成数据的增、删、改等最低层是关系数据库。Hibernate的持久对象是基于POJO和Java collections。此外,使用Hibernate并不妨碍你正在使用的IDE。Hibernate通过查询语言(HQL) 或者正则表达的API来完成查询。HQL 是一种对象查询的自然语言,非常类似于SQL,它只是把SQL里的table和columns用Object和它的fields代替[9]。像Hibernate这类的高级ORM框架支持大部分主流数据库,并且这个框架支持Parent/child关系,事物处理,继承和多态。Hibernate体系结构如图2-4所示。 图2-4 Hibernate体系结构 Hibernate是优秀的持久化工具,不仅提供了从Java类到数据表之间的映射,也提供了数据查询和恢复机制。相对于使用JDBC和SQL来手工操作数据库,使用Hibernate,可以大大减少操作数据库的工作量。Hibernate在持久层解决了面向对象设计范式和数据库关系模型不匹配的问题,是一个理想的O/R 映射工具,用它来替代Spring框架对JDBC的封装是一个很好的做法。 2.2.4 SSH框架整合 以上对Struts、Spring和Hibernate三种框架技术,进行了详细的研究,从中可以看出,对于各个框架技术的个体而言不存在优与劣,而只是应用领域不同而已。如何针对某一具体领域,选择合适的框架技术来相互弥补应用中的不足,则是很值得讨论的,构架图如图2-5所示。 图2-5 SSH构架图 Struts是一种优秀的J2EE MVC实现框架,运用了成熟的MVC设计模式和前端控制器(Front Controller)模式,并基于尽可能保持事物简单化的动机。Struts采取了分级的拉出式MVC模式。“拉出式”是指视图组件根据要求,从控制器中将模型信息拉出来作为响应。这与传统的Model的方式不同,传统的Model没有使用模型来管理信息,而是直接使用视图来访问信息。“分级”是指对视图数据的存放,在Struts中,“值堆栈”用来为视图提供信息,利用FilterDispatcher配合Xwork.xml文件实现对整个系统的导航。对业务流程动态配置,而不用将流程控制硬编码在代码中[10]。Struts利用强大的OGNL和值堆栈机制,为View层和Model之间实现了完美的数据共享,方便、灵活的拦截器是开发人员可以针对特定需求实现数据的拦截。 Struts+Spring+Hibernate是目前国外众多知名软件企业最主流的应用技术,也是J2EE未来发展的趋势,Struts作为前台控制框架简化了程序的开发,使页面设计人员和Java程序员达到有效的分离,使项目的可扩展性大大增强,提升了开发效率,降低了维护成本。Spring作为一个应用于所有层面综合框架,具有强大的应用功能及灵活性,非常适合作为一些大规模软件项目的底层平台[16]。Hibernate作为后台O/R mapping一个持久层框架的轻量级组件,对持久层进行了轻量级封装,降低了程序的复杂度,易于调试,减轻了程序员的负担,具有很强的扩展性,API开放,可自行对Hibernate原码进行修改,扩展所需的功能,所以Struts+Spring+Hibernate的联合框架一定具有美好的前景。 Spring是业界一直非常推崇的轻量级容器,与各种框架能够很好的集成。虽然Struts本身通过Xwork实现IoC机制,但考虑到在应用中会使用到AOP机制,而选择使用Spring作为容器来维护Bean的操作,能够很好的实现业务逻辑的分离,避免将所有的任务都由Struts完成。依靠IoC的依赖注入,给开发人员减轻了负担,使程序代码逻辑结构清晰,这样不但实现了组件间的松散耦合还大大提高了开发效率。Spring框架的优势不止于此,如事务操作、AOP和集成的持久层实现等给开发人员带来了极大的方便。不用拘泥于设计事务机制、繁琐的try-catch代码和数据库连接和获取、关闭等。Hibernate作为一种持久层框架和Spring天然的搭配在一起,使开发人员可以完全以面向对象的方式进行系统分析、系统设计并可以使用面向对象的操作方式操作数据库记录[11]。更为重要的是,应用系统在不同数据库间移植非常方便,只需在配置文件中更改即可。 开发过程中,三种框架技术的集成非常方便,作为开源框架中的佼佼者,三种技术顾及到了和其他框架的结合,而且开发者针对具体的应用需求,可以修改源代码,定制客户化服务。在项目实施中通过对以上三种框架的集成,充分利用各自的优势,互为补充,取得了良好的效果。 2.3 AJAX技术 1) AJAX概念 AJAX是2005年2月由Jesse James Garrett首先提出来的,它是Asynchronous Javascript And XML的简写,即异步的JavaScript和Xml而程序调用。AJAX是一种客户端开发技术,它能够与任何主流的服务器端语言,比如JAVA、C#、PHP、VB.NET等共同使用[12]。AJAX实际上不是一项全新的技术,它是把几项技术以强有力的全新思维方式整合而成。 2) AJAX大致涵盖以下几方面内容: (1) 利用XHTML和CSS进行基于标准的页面表示; (2) 利用DOM对载入的页面进行动态的显示和交互; (3) 利用XML和XSLT进行数据的交换和处理; (4) 利用XMLHttpRequest进行通信代理,完成异步数据检索; (5) 利用Javascript来编写AJAX引擎,将以上技术融合在一起。 3) AJAX应用和传统WEB应用的差别 在传统WEB应用中,用户运行程序的模式是:提交页面→等待响应→重新显示页面。只要刷新页面,就必须是完全刷新,这期间用户对程序的体验是中断的。利用AJAX可以使用户在不重载页面的情况下,通过Javascript启动一个异步HTTP请求从服务器获取信息,然后部分刷新页面信息,使用户对应用的体验是连续的,将原来在桌面应用程序中才能实现的功能带入到WEB中。 4) AJAX技术原理 AJAX相当于在用户和服务器之间加了一个中间层,使用户操作与服务器响应异步化。并非所有的用户请求都提交给服务器,像一些数据验证和数据处理等都交给AJAX引擎自己来做,只有确定需要从服务器读取新数据时再由AJAX引擎代为向服务器提交请求。AJAX的核心是Javascript对象XMLHttpRequest,该对象在IE5中首次引人,它是一种支持异步请求的技术,使用户可以使用Javascript向服务器提出请求并处理响应,而不阻塞用户。这样就减轻了服务器的负担又加快了响应速度、缩短了用户的等候时间。 5) AJAX框架的优势及种类 随着AJAX应用程序的大规模流行,由于用户使用浏览器的差异等诸多因素,通过直接利用Javascript操纵XMLHTTPRequest对象,与服务器端进行通信的方式编写AJAX应用的复杂性逐渐显现出来。这促使各种开源的AJAX框架如雨后春笋般涌现出来,它们把AJAX最基本的XMLHTTPRequest封装起来,并引入了它们自己的- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 J2EE 货物 管理 系统 设计 实现 论文
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文