《基于struts2物流信息流管理系统的设计与实现学士学位论文.doc》由会员分享,可在线阅读,更多相关《基于struts2物流信息流管理系统的设计与实现学士学位论文.doc(69页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、论文编号: 基于Struts2物流信息流管理系统的设计与实现订单、采购、销售和库存管理模块The Design and Implementation of the Logistics Information Management System Base on the Struts2Orders, Procurement, Sales and Inventory Management Module学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重
2、要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日摘要物流是指利用现代信息技术和设备,将物品从供应地向接收地准确的、及时的、安全的、保质保量的、门到门的合理化服务模
3、式和先进的服务流程。物流活动具有悠久的历史,现代物流在我国的物流产业已经成为发展的必然。现代物流管理要求是集现代运输、库存、配送、订单、销售、商品流通和信息管理于一体,而现在传统的手工记账或单机版的物资管理系统信息共享度低、资金周转慢,已不能适用时代发展的需要。建设一个良好的综合物流信息流管理系统会对企业提供至关重要的决策信息,物流信息流管理系统已经成为现代企业推进物流管理的迫切需要。论文在对当前物流产业充分调查分析的基础上,结合信息化物流管理模式,提出适应当前物流发展的物流信息流管理系统,本系统采用J2EE框架,并综合使用多种当前先进技术如MVC体系、JavaBean技术、Ajax技术、XM
4、L标准化法,这使得系统具有良好的伸缩性和通用性,进一步对物流信息平台进行概要设计和详细设计,分析了平台的模块功能划分,最终实现了整个系统平台。物流信息流系统的设计与实现为企业商品的信息交流、共享和人员协作方式带来了新的机会和挑战。通过系统的应用,大幅提高了劳动生产率和工作效率、降低了生产成本。系统的设计达到了预期的设计目标。关键词:物流信息流管理系统;J2EE;权限管理;数据库;MVC设计模式AbstractLogistics refers to the use of modern information technology and equipment, and make the goods
5、 from supply to receive accurate, timely, safe, quality and quantity, door to door rationalization service model and advanced service process. Logistics activities has a long history, Modern logistics has become a necessity of development of Chinas logistics industry. Modern logistics is a collectio
6、n of modern transportation, inventory, distribution, orders, sales, commodity circulation and information management, while traditional manual bookkeeping or stand-alone version of materials management system which have low level of sharing and slow cash turnover cannot meet the demands of the times
7、. To construct a well-integrated logistics workflow management system has become an urgent need for a modern enterprise to provide vital information for decision-making and promote the logistics management.This paper proposed a logistics workflow management system which is proper to present logistic
8、s development on the basis of full investigation and analysis of current logistics industry, in addition combined with logistics information management model. This system applies the J2EE framework and a variety of advanced technologies such as MVC system, JavaBean technology,Ajax technology and XML
9、 standardization law, which makes this system has good scalability and versatility, by further outline and detailed design of logistics information platform and platform module functional division, this system ultimately reaches the entire platform.Logistics workflow system design and realization pr
10、ovide new opportunities and challenges for modern enterprises to share commodity exchange and cooperate staff. By using this system, modern enterprises can increase productivity and efficiency, reduce production costs. The design of this system has achieved the expected goals.Key words: Logistics In
11、formation Management System; J2EE; Jurisdiction management; Database; MVC design Pattern目 录摘要IAbstractII第1章 绪论11.1 课题研究的背景和意义11.2 研究范围及要达到的技术要求21.3 国内外发展概况及存在问题21.4 系统指导思想及解决问题41.5 小结5第2章 可行性研究和需求分析62.1 可行性研究62.1.1 技术可行性62.1.2 经济可行性72.1.3 操作可行性72.2 需求分析72.2.1 功能需求72.2.2 性能需求82.3 小结9第3章 开发工具和关键技术介绍10
12、3.1 J2EE技术103.1.1 J2EE概述103.1.2 J2EE的优势113.2 MVC设计模式113.2.1 MVC概述113.2.2 MVC模式结构123.2.3 基于J2EE Struts 2的MVC模式133.2.4 MVC的优缺点133.3 JavaBean技术143.3.1 JavaBean概述143.3.2 JavaBean的特点143.4 XML标准化153.4.1 XML概述153.4.2 XML的先进特性15第4章 系统的总体设计174.1 系统平台的选择174.2 系统设计174.2.1 系统目标174.2.2 系统功能结构184.2.3 构建开发环境184.3
13、数据库设计194.3.1 数据库分析194.3.2 概念建模204.3.3 物理建模204.3.4 关系模式214.3.5 数据库表的设计224.4 开发前的准备工作264.4.1 表的创建和插入274.4.2 数据源的配置27第5章 部分模块的实现与测试285.1 测试的目的和原则285.2 公共模块285.2.1 数据库的连接295.2.2 过滤器295.2.3 监听器295.3 订单管理模块295.3.1 活动图295.3.2 界面305.3.3 测试用例305.4 采购管理模块335.4.1 活动图335.4.2 界面335.4.3 测试用例345.5 销售管理模块375.5.1 活动
14、图375.5.2 界面375.6 库存管理模块385.6.1 活动图385.6.2 界面395.6.3 测试用例405.7 测试结论42第6章 总结与展望436.1 总结436.2 展望44致 谢45参考文献46附录48附录A: 附加图、表48附录B: 主要源程序50附录C: 软件使用说明书60附录D: 光盘6161 中原工学院信息商务学院毕业设计(论文)第1章 绪论随着现代通信技术和网络技术的发展,基于B/S架构的信息平台在各个领域如雨后春笋地得以发展,物流在我国改革开发的30多年中同样得到社会的认识和发展,并成为我国经济发展中重要的现代服务产业。纵观我国物流发展历程,起步晚、层次低,现代物
15、流技术应用还处于初级阶段,尤其是物流信息发展和物流基础发展极不协调1。为了能够更好、更快地促进社会物流的发展,特别是信息的共享,需要从传统物流管理运作向现代物流管理运作转变,依靠通讯技术和网络技术构建现代物流信息平台,实现物流产业的跨越式发展,并成为企业、商业、电子商务、个人物流的应用基础,成为区域物流的调度中心,从而达到信息共享、成本降低、服务优质、运作高效的目标2。本文结合现代物流信息流管理系统的开发过程展开,详细介绍了需求分析、总体设计、相关技术和系统实现的全过程,力争通过对该项目的开发来更一步加深对物流信息流管理系统各个业务的理解、对相关技术的巩固与提高。1.1 课题研究的背景和意义社
16、会在不断进步,科学技术和管理也在迅速发展,这使得每个企业得到了前所未有的发展机遇,但同时也必须面对市场竞争的严重挑战,在日趋激烈的竞争环境下,企业要求生存、发展,就必须对企业进行科学的管理。而用计算机来处理企业内部信息间的流通和使用3,既可以实现数据信息的共享,控制好数据的冗余度,并使企业有统一的管理,提高信息的利用率;又可以实现整体数据的结构化,表示大量数据相互间的多种联系,这样就可以大大的提高企业生产动作的效率。本世纪以来尤其是“十二五”计划的实施,物流产业将发展成为对国民经济发展提供基础动力,对全球经济体系产生革命性影响的新兴产业4。计算机信息技术的发展,为现代物流企业实现管理提供了外在
17、的条件,促进了现代物流企业生产的发展。当然,现代物流管理同样具有一般企业管理的难点,如果运作不好,将导致企业物流效率乃至整个企业运作效率的低下,但是现代信息技术则恰好为物流管理提供了良好的运作平台。在网络环境下供应链中的各个节点企业能更好的实现信息共享,使企业可以提高生产力,降低了物流企业的运行成本5。对此,本项目旨在构建物流信息流系统,通过该系统,鼓励顾客与企业充分利用互联网实现信息共享,提高企业和顾客之间的交互,促进物流产业的发展,以达到提高物流效率、降低物流成本、满足客户需求的效果,同时实现信息化、网络化、自动化、智能化、标准化的发展。同时,企业也可以借助网络环境针对用户日益多元化的信息
18、需求,开拓思路,拓宽服务领域。构建现代物流信息流管理系统具体意义主要表现在以下几个方面:(1) 建立强大的物流信息流管理体系,推动物流产业的快速发展。(2) 提高物流领域的效率,创造具有竞争力的投资环境。(3) 建立集约化行业经营体系以降低产品流通成本,增强企业的竞争力。(4) 促进传统交通行业的升级换代,改造现有的物流信息的组织方式。(5) 提供新的物流服务项目,提高物流服务水平。1.2 研究范围及要达到的技术要求针对物流信息流管理系统,主要是面向物流公司的内部人员,满足相关人员便利查询相关信息,对相关信息的增删改查需求,功能针对性较强6。(1) 功能:系统可靠性高,结构良好,易理解,易修改
19、,可以使用户使用非常方便。采用了加密登录,安全性好,排除了非法用户侵入,人机界面友好,易维护,满足用户进行测试、排版、修改、增加、删除数据的各种功能。(2) 模块:增加模块,查询模块,修改模块、删除模块等。(3) 应用范围:应用于各种物流公司,物流公司商品信息的录入、查询、修改、删除以及对职员的查询、增加、修改、删除,订单、销售等相关业务的操作。(4) 此系统特别重视对系统的使用和维护进行说明,因为对一个庞大的系统而言,维护和应用才体现了它的价值。使用时,各数据的应用和操作的安全性不可忽视,防止数据在操作的过程当中应失误而丢失,以及在系统的维护当中,系统的各组件当中有紧密的连接,因为任何一个系
20、统当中如果不联系的话,将会造成很大的损失,大大减少了系统的实用价值,往往使我们难以预料,例如,在程序的执行当中,如果第一项与第二项没有关联,程序将不会继续运行下去,或者说,在退出程序时,没有进行自动保存功能的话,那么数据就会丢失,所以这些都要做重点考虑。1.3 国内外发展概况及存在问题从美国、欧洲、日本的情况来看,现代物流发展的趋势具有以下特征7:(1) 物流技术高速发展,物流管理水平不断提高。国外状况,国外物流企业的技术装备已达到相当高的水平。目前已经形成以信息技术为核心,以信息技术、运输技术、配送技术、装卸搬运技术、自动化仓储技术、库存控制技术、包装技术等专业技术为支撑的现代化物流装备技术
21、格局。(2) 国外物流企业向集约化方向、协同化发展、全球化方向发展。主要表现在两个方面:一是大力建设物流园区,二是物流企业兼并与合作。(3) 电子物流需求强劲,快递业“冲锋陷阵”,基于互联网络(如:World Wide Web,WWW)的电子商务的迅速发展,促使了电子物流(ELogistics)的兴起。据统计,通过互联网进行企业间的电子商务交易额,2011年全球已达到25100亿美元,据市场调查企业Forester Research预测,2012年这一数字将迅速增长到32200亿美元8,企业通过互联网加强了企业内部、企业与供应商、企业与消费者、企业与政府部门的联系沟通、相互协调、相互合作。消费
22、者可以直接在网上获取有关产品或服务信息,实现网上购物。这种网上的“直通方式”使企业能迅速、准确、全面地了解需求信息,实现基于客户订货的生产模式(Build to Order,BTO)和物流服务。此外,电子物流可以在线跟踪发出的货物,联机地实现投递路线的规划、物流调度以及货品检查等,可以说电子物流已成为21世纪国外物流发展的大趋势。(4) 绿色物流将成为新增长点。一方面电子物流的兴起,刺激了传统邮政快递业的需要和发展;另一方面,新兴的快递业发展迅猛,触角伸向全球各地。物流虽然促进了经济的发展,但是物流的发展同时也会给城市环境带来负面的影响,如运输工具的噪声、污染排放、对交通的阻塞等,以及生产和生
23、活中的废弃物的不当处理所造成的对环境的影响6。为此,21世纪对物流提出了新的要求,即绿色物流。从国内情况来看,现代物流发展的趋势具有以下特征9:中国物流业近5年才开始起步,并进入发展期。物流业的兴起与外资进入中国市场,制造业转移中国密切相关,接着是连锁业物流、家电物流、日用化工业物流、汽车物流等等。从区域概念来讲,先是沿海,特别是珠三角、长三角及环渤海地区,再逐步向中西部推进。据权威人士分析,中国的物流业的总体水平,特别是从物流成本占GDP的比重来衡量,大约在发达国家上世纪70年代末80年代初的水平。中国物流业虽然已迈入发展期,但总体上仍落后于发达国家20至30年。具体表现在:(1) 现代物流
24、观念比较薄弱,物流人才匾乏。企业主要在坚持自我服务的前提下,以改革企业现有的物流组织结构和流程为主,从原材料采购到产品销售过程中的一系列物流活动主要依靠企业内部组织的自我服务完成。专业化、社会化的物流需求还不多,远未形成应有的市场规模。严重的重复建设和地方割据现象,管理混乱和地方保护主义使设备及人员利用极不充分,造成了巨大的资金闲置和浪费。(2) 物流基础设施落后,重复建设严重。由于没有一定的标准准则约束,我国物流基础设施出现了大量重复建设项目和众多不同的标准,物流标准化建设滞后,物流装备标、准器具标准和基础设施标准不统一8。主要表现在:一是各类运输装备标准不兼容。二是物流器具标准不配套。三是
25、物流基础设施不规范。物流标准化建设的严重滞后,造成了资源浪费和效率低下。(3) 物流信息化程度低。从总体上来看,我国物流信息功能不够完善,除了物流信息平台的研究与系统实现POS和条形码技术外,其他信息技术在物流领域的应用程度普遍较低。特别是公共信息平台建设滞后,物流信息分散,资源不能有效整合,形成了大大小小的“信息孤岛”。(4) 物流专业化服务水平低,综合集成协调能力差9。目前多数从事物流服务的企业只能简单地提供运输(送货)和仓储服务,在流通加工、物流信息服务、库存管理、物流成本控制等物流增值服务方面,尤其在物流方案设计以及全程物流服务等更高层次的物流服务方面还没有全面展开。物流企业缺乏必要的
26、服务规范和内部管理规程,经营管理粗放,很难提供规范化的物流服务,服务质量较低。(5) 发展现代物流的法制环境尚未完善。我国现行的有关物流的法律法规,从法律效力角度来看,可分为以下三类:一是法律,主要有铁路法、海商法等;二是行政法规,主要有公路、水路、铁路、航空货物运输合同实施细则、海港管理暂行条例、关于进一步发展国内集装箱运输的通知等;三是由中央各部委颁布的规章,主要包括关于商业运输管理办法,关于加强我国现代物流发展的若干意见、关于促进运输企业发展综合物流服务的若干意见等。没有统一的法律约束,制约着我国电子商务物流的发展8。现有物流信息管理软件大多仍停留在基本信息管理的阶段,在很大程度上未能满
27、足客户的要求,它们面临的主要问题是物流的各功能相互独立,被分割成仓储、运输、搬运等环节,无法有效的综合起来。此外,现有物流信息管理软件未能从整个城市的物流需求出发,整合各领域的物流资源基础,起到面向各行业物流供需信息和方案决策的综合平台功能,这些都限制了它们的应用推广10。1.4 系统指导思想及解决问题本系统的设计要以现代物流的运营模式为理论基础,并利用电子商务的特点,将先进的经营理念与信息科技有机的结合起来,实现各产业链优势互补,达到效益的最大化,因而需要解决以下问题:(1) 实现物流信息流系统的基本定位,满足物流企业的基本需要。(2) 融合协同商务的理念,与电子商务系统平台的交互。(3)
28、工作流技术进行开发和设计。(4) 建立了以某一模块为核心的整个信息系统,包括商品,职员,库存等多个功能模块。(5) 面向对象的模块化设计,系统扩展性强。1.5 小结综上分析,系统必须以现代物流的基本指导思想为核心,结合电子商务的运行流程,以面向对象为基本设计理念,设计出安全的、稳定的、交互的模块化物流信息流管理系统。第2章 可行性研究和需求分析本章主要介绍了系统的可行性分析和需求分析、功能描述和模块划分。2.1 可行性研究2.1.1 技术可行性物流信息管理系统主要通过JSP、Servlet技术来是实现了一个物流管理系统。服务器使用的是Tomcat,在设计开发过程中,采用了MVC和工厂方法设计模
29、式对物流信息流管理系统进行架构,采用面向对象开发方法对物流管理系统进行开发实现11。在系统中,过滤器是关键。每发送一个请求都要经过过滤器进行验证,才可以进行下一步的操作,如果未登录,是无法在物流管理系统中进行操作的。对MVC三层架构,C层是M和V之间的桥梁,用于控制流程,主要用Servlet来实现,它负责页面跟底层数据库的交互工作,页面发送请求到Servlet,控制器经过处理之后调用不同的业务来处理请求,把从数据库拿的数据封装到一个Request里面,在页面通过EL标签和JSTL CORE标签库对请求中的数据处理并显示到界面给用户。V视图层主要由JSP来实现,JSP可以动态的显示页面信息,在物
30、流信息系统中的商品模块中的要添加新商品时,采用JavaScript做页面的基本验证,利用Ajax异步更新查询数据库对商品排重名,排重编号(不同的商品的编号是唯一,添加新商品时不可以相同)处理,如果写入相同的名字和编号,会给经理友好的提示信息,重新输入。M层主要负责业务功能。业务数据通过JNDI和数据源查询底层的数据库拿到,通过JDNI是比较好的一种连接数据库的方式,一般的连接数据库方式,每来一次请求,都要请求,都要与数据库建立一次连接,还要关闭资源,非常耗时。数据源很好的避免了上面所说的缺点,把数据连接保存在连接池中,当请求到来时,只需从连接池中取出空闲状态的连接数据库,大大地提高访问数据库的
31、效率。每添加一个商品时,由于要添加图片,把添加商品那部分单独写了一个工厂类,负责添加商品。并且连接数据库,关闭数据库资源都是通过工厂类实现,DAO的实现层可以直接调用使用。2.1.2 经济可行性本系统所采用的MySQL数据库是一种小型关系型数据库管理系统,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。目前Internet上流行的系统构架方式是LAMJ(Linux+Apache+MySQL+J2EE),即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,J2EE作为服务器端脚本解释器12。由于这四个软件都是自由或开放源码软件(FLOSS),因此使用
32、这种方式不用花一分钱就可以建立起一个稳定、免费的系统系统。2.1.3 操作可行性本系统的主要内容是:商品管理、职员管理、顾客管理、订单管理、采购管理、销售管理和库存管理功能模块,系统为不同的用户提供不同的操作权限,同时附加验证码保护,防止恶意登录,以及对系统的攻击和入侵,切实的保护用户的利益。系统的设计与开发方面,小组成员分工明确,将整个系统划分为几个具体功能模块,数据库设计采用统一规则,同时,开发人员具有很强的分析能力和解决能力。在设计完成之后,设计人员对系统进行负责管理。2.2 需求分析本节主要是对系统会员模块进行功能需求和性能需求的详细分析,从而确定系统的总体框架、具体功能模块和服务器配
33、置以及数据库的设计需求。2.2.1 功能需求我们要为Tina集团开发一套电子商务综合管理平台,该平台是EZ在线销售系统的后台支撑,它要求能通过EZ公司的专网为各分公司及总公司的员工提供采购业务、销售业务、仓储业务、商品管理、员工管理、客户管理、审批管理等功能。1. 商品管理主要有商品类别和商品的添加、删除、修改、查询等功能。当一个商品的类别改变时要重新生成商品的编号,其中查询支持模糊查询。2. 职员管理主要有部门和员工的添加、删除、修改、查询等功能。当一个员工的部门改变时要重新生成员工的编号,其中查询支持模糊查询。3. 顾客管理主要有所有顾客的详细信息,当相关人员登录时,可以查询订单信息和订单
34、明细,其中查询支持模糊查询。4. 订单管理主要有所有订单的详细信息,当相关人员登录时,可以查询订单信息和订单明细及修改订单的状态,其中查询支持模糊查询。5. 采购管理主要有商品的采购和查询等功能,当采购一件商品时,会自动生成商品的编号,其中查询支持模糊查询。6. 销售管理主要有商品的销售和查询销售等功能,当销售一件商品时,会消除生成商品的编号,并生成出库操作,其中查询支持模糊查询。7. 库存管理主要库存统计和库存盘点,其中库存统计中查询采购记录和销售记录,其中查询支持模糊查询。2.2.2 性能需求在全面了解了用户的需求后,接下来就要根据所掌握的用户需求进行分析,为后面的正式系统设计提供技术基础
35、,毕竟用户只知道需要什么功能,具体在网络系统设计中如何体现并不清楚。下面各节分别从响应时间需求分析、吞吐性能需求分析、可用性性能需求分析、并发用户性能需求分析和可扩展性能需求分析5大部分进行介绍13。1. 响应时间需求分析一般地,一个交易过程(例如一个请求,完成一个查询)可能由几个客户请求和服务器响应组成,从客户发出请求(信息包层或交易层)至他收到最后一个响应的时间就是整体的响应时间。计算机用户最讨厌等待。在大量的处理环境中,超过3秒以上的响应时间将会严重影响工作效率,因而需要控制系统的响应时间在3秒以内。2. 吞吐性能需求分析物流信息流管理系统是一个数据吞吐量较大的系统,当它与电子商务系统进
36、行交互时,信息量就会更加巨大,因而系统的设计需要满足较大数据量的吞吐。3. 可用性能需求分析因为涉及到与电子商务系统平台的交互,所以对系统的安全可靠性、故障恢复和故障时间都要求很高,因而在设计系统时必须考虑到系统的这些要求,设计出满足需要的高性能系统。4. 并发用户需求分析并发用户数需求是整个用户性能需求的重要方面。由于本系统是应用型系统,因而并发用户数支持的多少决定了相应系统的可用性和可扩展性。系统的可用性需求较高,而且要实现与电子商务系统的扩展,因而必须满足大量用户并发访问。5. 可扩展需求分析网络系统的可扩展性需求决定了新设计的网络系统适应用户企业未来发展的能力,也决定了网络系统对用户投
37、资的保护能力。物流信息流管理系统是与电子商务平台配套使用的,因而该系统必须具有良好的可扩展性,实现与电子商务平台的扩展与交互。2.3 小结综上分析,设计系统无论是技术,还是经济,抑或是操作,都是完全可行的,系统的设计大致可分为商品、职员、顾客、订单、销售、采购和库存等7个管理模块。另外,设计出的系统必须是安全稳定的,满足多用户并发访问,满足大数据量的吞吐,同时实现系统的良好扩展。第3章 开发工具和关键技术介绍3.1 J2EE技术企业应用体系结构已经经历了巨大的发展。第一代企业应用是集中式的大型机应用,在20世纪90年代,发展到了二层体系结构,再后来面对大型系统的复杂性,为了使繁琐的问题简单化,
38、适应细化项目的需要,在系统开发过程中提出三层和多层体系结构。从另一个角度看,开发体系结构又经历从C/S为主流发展到B/S唱主角的一个过程11。目前,以J2EE为首的多层结构的B/S架构己经成为主流的体系结构,它具有良好的可拓展性和可维护性,从而带来稳定的系统质量,并实现软件重用,节省新项目的开发时间1415。3.1.1 J2EE概述J2EE(Java 2 Platform Micro Edition)是SUN公司为了适应简化企业解决方案,方便企业的解决方案的开发、部署和管理,而提出的构建多层次企业级应用的一系列标准和规范。目标是提供平台无关的、可移值的、支持并发访问和安全的,完全基于JAVA的
39、开发服务器端中间件的标准。核心Java平台或Java平台的标准版是J2EE技术的基石16。J2EE是一个基于组件容器模型的多层次分布式系统平台,其核心概念是容器。所谓容器是指为特定组件提供服务的一个标准化的运行时环境,其中组件(COMPONENT)就是用于构造应用系统的可复用的软件模块,它们具有特定的功能和自主能力,按一定的接口规范可以实现互操作。容器封装了J2EE底层的API,为组件提供诸如生命周期管理(LIFE CYCLE MANAGEMENT)、安全控制(SECURITYCONTROL)、事务管理 (Transaction Management)以及安全性(Security)、持久性(P
40、ersistence)等服务12。J2EE体系结构提供中间层集成框架用来满足企业应用程序设计、开发、装配及部署过程中的需求,在J2EE平台上的企业应用系统实际上是实现了许多企业业务逻辑和用户界面的J2EE组件的集合。J2EE平台提供了一个统一的开发规范和标准,通过指定应用程序的功能和接口,以及部署应用程序的运行环境,提物流信息流管理系统的设计与实现,提供了应用程序与运行基础结构的明确分界线,使程序开发人员可以集中考虑应用程序逻辑和相关服务16。作为结果,J2EE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,大大提高了性能。3.1.2 J2EE的优势基于J2EE开发规范
41、构造基于Web的软件应用系统主要有以下优势:1. 独立于系统平台应用软件拥有JAVA的“编写一次、随处运行”17跨平台特性,增强了软件的适应胜。2. 集成企业信息资源系统可以在企业已有的信息系统的基础上开发,并可以使用其信息资源。J2EE能够开发部署在异构环境中,能使用各种资源的集成,从而提高企业系统的集成速度18。3. 系统开发效率高由于J2EE可以使开发人员使用中间件供应商提供的中间件来负责通用的、复杂和繁琐的服务器端任务,而主要开发业务处理组件,提高了开发速度,适应不用企业软硬件环境19。4. 实现了软件复用根据系统的要求,开发人员可以集成不同的已有组件完成整个应用系统的开发。5. 可扩
42、展性高基于J2EE开发的应用程序可以部署到各种操作系统中,从而增强软件的可伸缩性,满足企业的各种需求。6. 系统稳定性、持续性和安全性高J2EE为应用系统提供了良好的安全和运行模型,系统可以稳定高效地运行。J2EE部署到可靠的操作环境中,就可以提供服务器平台全天候的运转20。3.2 MVC设计模式3.2.1 MVC概述设计模式就是在具体场合下解决问题的方法和经验,它为开发人员提供了一种设计经验的有效途径21。MVC设计模式是基于J2EE的WEB应用开发的首选软件设计模式22,它是“ModelViewController”的缩写,中文翻译为“模型视图控制器”。MVC是Xerox PARC在八十年
43、代为编程语言Smal1talk80提出的一种软件设计模式。它是一种结构化设计模式,在系统设计过程可以实现三层甚至多层的松散藕合23。MVC强制性的将应用系统划为三个部分:Model、View、Controller,让每个部分独立处理自己的任务,通过这种明确的划分,MVC为程序代码的可重用性、易扩展性奠定了良好的基础。MVC中Model是实现系统的业务逻辑,完成系统的核心功能。应用系统的所有持久数据的访问、维护和管理都属于Model的任务,Model提供的服务必须能够适用于不同的平台;View是一个系统的外部形象,是Model的外观,能够反映Model的即时状态,Model发生变化会导致View
44、的随之变化;Controller是Model与View之间的联系的桥梁和纽带,对二者之间的交互进行监督和控制,它接受和翻译用户请求,并指定Model或View来执行用户的请求24。3.2.2 MVC模式结构MVC模式的设计思想是将应用系统的各个功能划分开来,各司其责,使系统的结构更加清晰,容易理解,同时更能适应系统需求的变化。MVC模式的关键是实现了表示、控制和数据的分离。在J2EE平台,模型主要通过封装JavaBean和EJB来处理业务逻辑和访问数据。1. 模型即事务逻辑模块,这是整个MVC模式中的核心部分,它是业务流程/状态的处理以及业务规则的制定,用于表示解决方案空间的事务真正的逻辑。它
45、采用面向对象的方法,将问题领域的对象抽象为应用程序对象,并在这些抽象的对象中封装对象的属性以及这些对象所隐含的逻辑25。2. 视图物流信息平台的研究与系统实现视图是用户看到并与之交互的界面26。视图向用户显示相关数据,并能接收用户的数据输入,但是它并不进行任何实际的业务处理。视图可以向模型查询业务状态,但不能对模型进行修改。此外视图可以接收模型发出的数据更新事件,以维持系统数据的一致性。当模型发生改变时,视图也将随之改变,从而对用户界面实现同步更新。一个模型可以关联多个视图,反过来一个视图也可以与不同的模型相关联。在基于Web的应用系统中,视图元素通过浏览器展示给用户,这些视图元素可以是HTM
46、L、XML或Applet。3. 控制器控制器可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求27。控制器定义了应用程序的行为,是对整个应用程序流程的反映,视图提交的所有请求都由控制器来处理。控制器的一个重要的功能,就是将用户请求传递给相应的业务处理模型,同时还负责选择视图返回处理的结果。MVC设计模式己被证明是有效的处理方法之一,通过将模型、视图和控制器三部分分离,该设计模式简化了应用程序的设计复杂性,降低了各部分之间的祸合,提高了系统灵活性和可维护性25。它特别适用于开发多用户的、可扩展的、和交互性强的应用系统。3.2.3 基于J2EE Struts 2的MVC模式Str
47、uts 212是实现了MVC模式的Java开源软件,是一种用来帮助开发人员开发互联系统点的应用框架。作为MVC框架,Struts 2对模型、视图和控制层都提供了对应的实现组件28,下面分别加以介绍。1. 模型Struts 2为模型部分提供了Action和ActionForm对象。Action对象封装了具体的处理逻辑,它调用业务逻辑模块,并把响应提交到合适的视图组件。ActionForm对象实现了对模型和视图之间交互的支持。2. 视图Struts 2应用中的视图部分通过JSP技术来实现。Struts 2提供了自定义的标记库,通过使用这些自定义标记所创建的JSP表单,可以实现和模型部分中的ActionForm的映射,完成对用户数据的封装。3. 控制器在Struts 2中控制器功能由ActionServlet和ActionMapping对象构成。其中ActionServlet用来接受客户端的请求,ActionMappin