港口物流调度系统的设计与实现.docx

上传人:小飞机 文档编号:1738703 上传时间:2022-12-16 格式:DOCX 页数:86 大小:1.97MB
返回 下载 相关 举报
港口物流调度系统的设计与实现.docx_第1页
第1页 / 共86页
港口物流调度系统的设计与实现.docx_第2页
第2页 / 共86页
港口物流调度系统的设计与实现.docx_第3页
第3页 / 共86页
港口物流调度系统的设计与实现.docx_第4页
第4页 / 共86页
港口物流调度系统的设计与实现.docx_第5页
第5页 / 共86页
点击查看更多>>
资源描述

《港口物流调度系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《港口物流调度系统的设计与实现.docx(86页珍藏版)》请在三一办公上搜索。

1、硕士学位论文(专业学位)港口物流调度系统的设计与实现姓 名: 袁满学 号: 1121170149所在院系: 软件学院职业类型: 工程硕士学科专业: 软件工程指导教师: 徐燕凌副指导教师: 杨红娜二一三年五月学位论文版权使用授权书本人完全了解同济大学关于收集、保存、使用学位论文的规定,同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、扫描、数字化或其它手段保存论文;学校有权提供目录检索以及提供本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有关部门或者机构送交论文的复印件和电子版;在不以赢利为目的的前提下,学校可以适当

2、复制论文的部分或全部内容用于学术活动。 学位论文作者签名:袁满 2013年5月7 日 同济大学学位论文原创性声明本人郑重声明:所呈交的学位论文,是本人在导师指导下,进行研究工作所取得的成果。除文中已经注明引用的内容外,本学位论文的研究成果不包含任何他人创作的、已公开发表或者没有公开发表的作品的内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式标明。本学位论文原创性声明的法律责任由本人承担。 学位论文作者签名:袁满 2013年5月7日同济大学 硕士学位论文 摘要摘要现代港口已经成为全球综合运输网络的节点,建立现代港口物流日趋重要且迫在眉睫。管理智能化、操作信息化是我国现

3、代化港口的重要标志之一,为了提高港口竞争力,务须改善港口工作效率以及管理水平。因此公司建立了港口物流管理系统。本文以天津港为研究背景,对港口物流调度信息化展开研究,并且设计开发了港口物流管理系统,该系统提供统一接口访问用于监控和采集数据的子系统,并将物流调度的监控系统和港口物流调度管理集成到系统之中,公司各部门处于同一管理平台,能够实现生产与管理信息的快速共享,从而提高港口企业的物流调度效率。该系统采用J2EE技术进行开发设计,并且结合了MVC技术。系统主要分货运管理、库场管理、库场图、预确报、调度计划、作业调度、调度查询、调度统计、数据维护等模块。信息化管理使港口企业能够实现资源规划一体化,

4、有利于均衡公司最大生产能力与有序发展生产之间的关系,实现并提高公司生产调度管理的自动化和可视化以及各项资源信息的动态实时共享。关键词:港口、物流、管理、库场、调度ITongji University Master of Engineering AbstractABSTRACTModern port has become a global integrated transport network node, and the establishment of a modern port logistics is becoming increasingly important and imminen

5、t. Intelligent management and operation of information technology is an important symbol of Chinas modern port, advised to improve port efficiency and management level in order to improve the competitiveness of our port. Therefore, the company has established a the Port logistics management system.T

6、ianjin Port research background, to study the port production management information, and port logistics management system, the system provides a unified interface to access subsystems for monitoring and collecting data, and production operations monitoring systems and port the logistics scheduling

7、management integrated into the system, the various departments of the company in the same management platform, able to achieve rapid production and management of information sharing, thereby improving the efficiency of the port enterprise production management. The system uses J2EE technology develo

8、pment, design, and combined with a MVC technology. The system mainly consists of freight management, and exit management, library field map, pre indeed reported, scheduling, job scheduling, scheduling inquiries, scheduling statistics, data maintenance module.Information management of ports in enterp

9、rise resource planning integration will help the relationship between the the balanced companys largest production capacity with the orderly development of the production, implementation and increase the companys production scheduling management automation and dynamic information visualization as we

10、ll as all of our resources real-time sharing.Key Words: Port、Logistics、Management、Library field、Dispatch75同济大学 硕士学位论文 目录目录目录III第1章绪论11.1课题研究背景及意义11.2港口信息化发展现状31.2.1港口信息化国外发展现状31.2.2 港口信息化国内发展现状51.3论文的主要内容:61.4 论文的结构7第2章 相关技术82.1 J2EE开发技术82.1.1 J2EE概述82.1.2 J2EE核心组件及技术82.1.2 J2EE的在大型企业项目中的优势102.2 MVC

11、开发模式112.2.1 MVC模式的优点122.2.2基于J2EE的MVC模型13第3章 需求分析143.1 系统目标143.2 系统功能分析141.船舶调度模块152库场管理模块:151. 货物调度计划模块:162. 系统综合统计查询:163. 数据维护及系统管理:171)数据维护172)系统用户及权限管理:173)数据备份及恢复:173.3 系统主要用例分析173.3.1 船舶调度管理173.3.2库场管理模块183.3.3 库场图193.3.4 预确报模块203.3.5 调度计划模块203.3.6 出入库作业调度模块213.3.7 调度查询213.3.8 调度统计223.3.9 数据维护

12、22第4章 系统设计244.1系统设计原则244.2 系统总体各模块设计244.2.1 船舶调度模块244.2.2 库场管理模块28库场图管理:284.2.4 预确报模块294.2.5 调度计划模块294.2.6 作业调度模块304.2.7 调度查询314.2.8 调度统计324.2.9 数据维护334.3 数据库设计334.3.1 概念结构设计334.3.2逻辑结构设计354.3.2.1船务模块的关系模式364.3.2.2数据库表结构设计374.3.4数据库实施414.3.5数据库运行和维护42第5章 系统实现445.1 系统总体的实现445.2 系统主要功能的实现445.2.1 船舶调度模

13、块445.2.2 库场管理模块455.2.3 库场图模块485.2.4 预确报模块495.2.5 调度计划模块505.2.6 作业调度模块525.2.7 调度查询545.2.8 调度统计555.2.6 系统管理及数据维护57第6章 系统测试606.1测试环境和目的606.2本系统测试过程中用到的工具、驱动程序、桩程序606.3部分测试技术、部分用例和用例测试结果616.3.1单元测试616.3.2集成测试62第7章 总结64参考文献65第2章 相关技术第1章绪论1.1课题研究背景及意义现代港口已经成为全球综合运输网络的节点,建立现代港口物流日趋重要且迫在眉睫。管理智能化、操作信息化是我国现代化

14、港口的重要标志之一,为了提高港口竞争力,务须改善港口工作效率以及管理水平。交通部也出台了公路、水路交通信息化“十五”发展规划,在该信息化发展规划中交通部明确提出:要以信息化、网络化为基础,充分发挥公路、水路运输方式的优势。发展和完善集装箱运输、大宗物资运输和特种货物运输等五大系统的建设,引导和鼓励公路、水路运输企业利用先进的信息技术,改变企业的管理、生产、营销方式,运用现代经营方式和服务技术,改造交通运输传统服务业,构筑交通信息服务产业化的框架1。港口在物流服务链中处于十分重要的位置。港口是一个货物的集散地和各种运输载体的换装点,是水运货物流动的“车站”,它是水路、陆路、铁路等运输的起点和终点

15、。港口物流是一个特殊的物流产业,物流企业的产业分为三个层次:核心产业、形式产业和延伸产业,核心产港口在物流服务链中处于十分重要的位置。港口是一个货物的集散地和各种运输载体的换装点,是水运货物流动的“车站”,它是水路、陆路、铁路等运输的起点和终点。港口物流是一个特殊的物流产业,物流企业的产业分为三个层次:核心产业、形式产业和延伸产业,核心产业是货物的装卸;形式产业就是利用不同的装卸机械设备和安全保障体系的条件下完成对货物的装卸、运输、储存;延伸产业是向货主提供优质、便捷的承运、交付手续,是一个完善的服务网络业是货物的装卸;形式产业就是利用不同的装卸机械设备和安全保障体系的条件下完成对货物的装卸、

16、运输、储存;延伸产业是向货主提供优质、便捷的承运、交付手续,是一个完善的服务网络港口物流调度一般包括物流调度计划和调度过程两部分。港口物流调度计划的种类较多,有月度、旬度、昼夜轮班、船舶和连续作业计划,各种物流调度计划是保证企业各阶段计划完成的基础,也是组织有序高效物流调度的前提。港口调度过程则由生产准备过程、基本调度过程、辅助调度过程和生产服务过程组成。在生产准备过程,要完成装卸作业计划和相关的组织准备工作,接着就进入基本调度过程,有多种工序协调完成车、船等的装卸过程。另外,辅助调度过程完成包括设施管理维护类的辅助性生产活动;生产服务过程完成理货、货物检验、包装等服务活动。港口企业的调度过程

17、有着不同于其他行业的鲜明特点,它的核心生产业务过程就是调配港口各种资源来完成货物的装卸、堆存、疏运等过程。如何充分利用现代信息技术的便利来动态规划与动态协调资源的调配,使得相关信息能够及时获取与共享,保障调度过程中的计划、组织、协调、控制等行为得以低成本高效率的完成,并为客户提供高效、优质的服务成为港口企业信息化建设的迫切需求。为了实现港口企业信息化建设,国内已有港口开始使用或构建物流调度信息系统。港口物流调度信息系统是建立在港口信息网络之上的综合管理信息系统,通用的主要功能包括船舶调度、实时动态管理、数据交换处理和在港船舶分布和图形显示等,但由于各港情况差异较大,各港必须根据自身的实际情况开

18、发本港适用的港口物流调度信息系统。本文以天津港为研究背景,对港口物流调度信息化展开研究。天津港是全国沿海25个主要港口之一,规划在未来五年,将加快推进港口建设、改造和开发步伐,形成铁矿石、石油、煤炭、粮食、化肥、硫磺等大型物流集散基地和分销中心,发展成为以能源、原材料和集装箱运输为主,临港工业高度发达的现代化国际大港。天津港正在实行向现代化港口的企业转型,同时也在寻求更高效的管理方式,而通过信息化提高港口竞争力是港口发展的必由之路。由于港口已经建立了门机绩效考核系统、集装箱管理信息系统、石化码头油罐区计算机监控与信息管理系统,因此在构建港口信息管理平台时,需要将这些系统集成到平台中,实现系统信

19、息的共享。同时以这些系统所釆集到的数据和监控信息为基础,为各公司和集团的生产调度安排和管理决策提供依据和保证。本系统正是基于此需求而开发的信息管理平台。系统提供统一接口访问用于管理和采集数据的子系统,并将港口物流调度管理集成到港口智能业务支持管理系统之中,使各分公司和集团总调处于同一管理平台,能够实现生产与管理信息的快速共享,从而提高港口企业的物流调度效率。信息化管理使港口企业能够实现资源规划一体化,有利于均衡公司最大生产能力与有序发展生产之间的关系,实现并提高公司生产调度管理的自动化和可视化以及各项资源信息的动态实时共享。1.2港口信息化发展现状1.2.1港口信息化国外发展现状我国目前正处于

20、港口管理体制变革时期。港口与航运管理机构在信息化方面的经验和技术手段上都存在着很大的不足,迫切需要向发达国家学习,借鉴先进的港口企业信息化管理经验。随着信息技术的发展和应用,以企业信息化为基础、EDI和电子商务为核心、利用信息网络进行商务活动的发展趋势日渐明朗。目前国际上,信息技术在水运系统中的应用主要有航运信息管理系统,包括船舶调度指挥系统、商务管理(发盘、询价、订舱)系统、机务海监管理系统、人事财务管理系统等。船舶内部管理有船务管理系统、货物装卸控制系统、自动导航、故障诊断系统等。通过网络通讯技术,实现船岸一体化信息系统,航运公司可把船次任务、航线、靠泊、装卸及维修计划等指示发送到船上,船

21、上亦可将航行状况、设备状态、航线水文气象等情况及时报告到公司调度中心。最大限度地利用现有运输设备并为客户提供周到的服务。如美国利用信息系统处理船舶运输中的每一环节,进行订舱、订箱、货物跟踪、设备跟踪及单据处理等业务。日本也开发了船岸一体化船队管理系统,用于船队调度、生产计划、货物跟踪、人事财务管理。在港口方面,早在上世纪八十年代,美国就将信息技术应用到港口货物动态跟踪、装卸作业控制、库场管理等,向管理人员提供整个运输装卸过程中的各种信息。日本在港口中用信息技术进行船舶管理、库场管理、公共设施管理、费用管理等,大大减少了船舶待泊时间。近年来,世界各大港口纷纷实行港口调度管理信息化、货物运输需求信

22、息化、利用网络技术、采用电子单据EDI技术,逐步淘汰繁琐的手工单证,实现了船舶、港口、货主、一关三检等单证数据交换,尤其是标准化程度较高的集装箱运输更是普遍采用。如:美国新奥尔良港以230万美元开发了全港统一的CRESCENT系统,其外部功能主要为:电子泊位申请系统、自动登记货单系统、危险货物查询系统、货物状态系统等。下面简要介绍几个国外大型港口企业的信息化建设情况。新加坡港作为国际超级大港,信息化起步较早,成绩斐然,其信息化道路也具有一定的代表性。新加坡港务局从1984年开始建设港口网络(PORTNET),到九十年代初,全港信息服务已达到相当高的水平:客户可方便地查询港务局的船舶、货物、集装

23、箱和货运详情等数据库信息;联机系统每天24小时每周7天提供服务,可以是实时信息,也可以是电子数据交换处理;用户对提交单证的等待时间,并可以准确快速得到答复甚为满意。进入90年代,新加坡港务局和贸易发展局联合开发了海运信息系统(MAINS),把船公司、运输公司、贸易伙伴和代理服务公司之间的货运单证流集成起来,使新加坡拥有世界上第一个全部货运单证流处理的信息系统。MAINS增强了PORTANT的应用,把贸发局、海关、船公司、运输公司、贸易商、代理和港务局所需要的信息都合并到数据库中,从而使所有相关伙伴的货物船舶信息和数据的录入工作有单一的参照点,中心数据库放在港务局的主机上,信息以逐步增长的方式建

24、立。集成化联机的系统促进了信息共享和交互功能。从20世纪80年代起,韩国的物流费用在国民经济中里的比重迅速增加。为了减少物流费用,韩国政府制定和实施了信息化计划。这一信息化在港口和贸易领域尤为重要,在其他领域也都有实施。但是,港口和贸易部门的信息化在时间上比其他任何部门都早开发。韩国有关港口的信息化工作由中央政府一元化开发和营运,各港的港口信息系统没有什么不同,所有港口都是同样的系统。韩国的港口管理部门自1987年起着手开发“港口营运系统”,1995年将釜山港的信息系统EDI化,1998年11月开发成引入EDI方式的web形式的输入服务,且在1999年度以后将此普及到全国港口。1999年1月建

25、成了“进出港手续一站式服务”,这样一来,如今发往港口管理部门和海关移民检疫机关中不论哪一个的信息,只要一次发送,就能处理所有的进出口业务。从2000年1月起,港口设施使用费的收纳业务与金融网络联网,实现了自动化,并与国家会计管理系统联网2。1.2.2 港口信息化国内发展现状上海港在世界集装箱港口排名自2003年起已连续三年保持第三位。2005年,集团国际集装箱吞吐量达到1808.4万标准箱,货物吞吐量达到4.43亿吨,跃居世界第一大港。上海港从1997年开始建设上海港PORTNET系统,包括生产调度系统、人力资源系统、固定资产管理系统、办公系统四个子系统,并基本实现了港口Intranet网络系

26、统。2001年上海港引航管理站在全国港口中第一个正式开始启用了GPS-GSM(全球卫星定位系统和数字手机网络系统),从而使上海港的160多个引航员长上了“千里眼”,每一艘被引领的船舶动态都会在电子海图上一一显示,从而彻底告别了靠对讲机报告船舶方位的历史3。大连港的信息化建设于20世纪80年代,其在1981年就开始了计算机应用,经过多年的信息化建设,大连港无论在基础设施建设还是应用系统、网络建设、信息集成等方面都有了很大提高,企业信息化框架已经基本形成,具有一支能力较强的计算机应用队伍,具备了一定的信息化建设与应用基础。在网络通信建设基础方面,已建成了以ATM光纤为主干网,釆用先进的网络设备和I

27、SDN通信技术,实现港内外连通的硬件平台。开发完成了调度、货商、物资等应用系统;办公自动化正逐步扩展到全局应用;目前,大连港的EDI系统已实现与政府网络的联网4。青岛港的信息化建设起步也较早,20世纪90年代初,全港“管理信息系统”就投入运行。1996年在企业发展资金紧缺的情况下,青岛港投入1000多万元在国内率先建起了EDI系统,并在一年后建起了全国港口最大的信息中心。目前,青岛港的EDI中心己把国内外多个船公司、集装箱场站与青岛港连为一体,每天有近千条电子报文穿梭来往于青岛港和世界各大航区、各大船公司之间,极大的提高了集装箱运输信息的时效性、准确性。青岛港充分发挥EDI技术的领先优势,使青

28、岛地区80%的外贸集装箱运输单都通过港口EDI系统进行交换,实现了国际贸易无纸化、网络化和快捷化。2000年起开始实施青岛港信息技术改造工程,该工程实际完成投资12561万元,到2005年已基本实现了规划和设计目标:建成了集成可视化港口生产指挥中心,港口管理实现了全面计算机化,为生产组织调度、船舶引航等管理提供了及时有效的技术手段;开发建设了集管理、效益和控制为一体的内部管理集成平台,全面推广和应用人事、财务、物资、设备等管理方面的计算机应用,全面提升了信息化管理水平;初步建成了以港口为中心的港口物流信息共享平台,进一步改善了口岸环境,扩大了用户范围,增强了青岛港的竞争力;建成以总体资源规划为

29、基础的港口数据库,完成信息数据资料的分析和查询系统,实现了信息处理自动化,信息传输网络化,为建成信息港奠定了基础。经过多年的快速发展,青岛港各种应用系统基本实现了计算机管理,使管理逐步实现现代化,而随着港口业务的不断扩展与资源改造,各级管理层要求软件应用系统不仅要覆盖日常事务性业务处理,而且要求对港口经营提供分析和决策提供相应支持。在此情况下,比较孤立的各个信息系统己经无法满足港口发展的需要,所以青岛港将港口软件资源进行了整合,将已有的应用系统间根据业务关系进行了完善,进行了业务流程再造,相继开发了综合信息服务系统、核算和监控系统、决策经营相应分析等内容,实现了管理与业务的集成,信息资源的集成

30、5。通过以上分析,可知港口企业信息化是一个长期的、复杂的系统工程,国内外在这方面已经进行了大量探索和实践,取得了一定成绩,但也还有很多地方需要进一步改进,例如建立港口生产调度的数学模型并利用计算机来对整个港口的调度过程进行辅助决策就应用较少。特别是在国内,大多数还处于各类信息系统零散开发、缺乏集成共享的局面。国内港口在进行信息化建设时,应当吸取国内外港口的相关经验和教训,尽早制定信息化的总体规划,按照规划方案分步实施,可以有效减少资源的浪费,提高信息化的效果。1.3论文的主要内容:本文的主要研究内容:1.通过调研、文献查询等方法系统地分析了 港口物流系统的主要业务流程,港口物流系统的功能需求,

31、关键技术指标及相关系统的研究现状。主要报过(1)货运市场部的业务需求与信息需求;(2)物流调度部的业务需求与信息需求;(3)操作管理部的业务需求与信息需求;2结合港口业务发展需要,对系统中的主要功能进行了详细的分析:按业务没款给出了详细的需求说明及主要模块用例图。4. 重点介绍了系统部分功能详细的系统设计,其中包括参与的主要模块业务流程、功能说明、数据库及数据接口的设计,数据库及数据仓库的实现方案等。为了读者对港口物流系统理解的完整性,在文中业简略列出未参与的出口业务,进口业务的概要设计,在此特定声明。并在文中标注了引用。5介绍系统实现,本人参与的系统主要模块的运行界面及关键代码,给出了调度,

32、预确报作业计划中部分功能的研究分析和实现6结合本系统和其它信息系统实践介绍了应用MVC模式的一些重点和体会。1.4 论文的结构本文各章节的安排如下第1章 绪论,介绍了本课题的研究背景和意义,港口信息化在国内外的应用发展现状,以及本文的研究内容。第2章 相关技术,介绍了与论文工作相关的理论基础,J2EE和MVC开发模式。第3章 需求分析,本文从业务流程和功能两方面对某港做了软件需求分析,着重讨论、分析和建立港口物流调度信息系统的实际功能需求。第4章 系统设计,详细介绍系统功能模块的划分和各模块所要实现的功能,以及系统框架结构设计、数据库需求分析和结构设计。第5章 系统实现,介绍系统的开发环境及运

33、行环境,举例说明了系统三层结构的实现方法,给出了关键功能的研究分析和实现,最后研究了系统所采用的安全策略。第6章 系统测试,在系统完成之后对系统进行了单元测试和集成测试。第7章 总结与展望,总结了本课题完成的主要工作内容以及对未来工作的展望。第2章 相关技术2.1 J2EE开发技术本节将简单介绍海运物流管理系统的技术支持。从J2EE概述、J2EE的核心组件以及J2EE的优势几个个方面对J2EE模型予以描述。2.1.1 J2EE概述J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值,; J2EE为搭建具有可伸缩性、

34、灵活性、易维护性的大型业务系统提供了良好的机制:高效的开发:J2EE允许公司把一些通用的、很繁琐的服务端任务交给中间供应商去完成。这样开发人员可以集中精力在如何创建商业逻辑上,相应地缩短了开发时间。支持异构环境:J2EE能够开发部署在异构环境中的可移植程序。基于J2EE的应用程序不依赖任何特定操作系统、中间件、硬件。核心技术JJ2EE平台由一整套服务(SERVICES)、应用程序接口(APIS)和协议构成,它对开发基于WEB的多层应用提供了功能支持。在本文中我将解释支撑J2EE的13种核心技术:JDBC,JNDI,EJBS,RMI,JSP,JAVA SERVLETS,XML,JMS,JAVA

35、IDL,JTS,JTA,JAVA MAIL 和 JAF,同时还将描述在何时、何处需要使用这些技术。当然,我还要介绍这些不同的技术之间是如何交互的。2.1.2 J2EE核心组件及技术Java Bean组件Java Bean的意思是封装业务逻辑,方便外界的调用。调用者可以是JSP也可以是其他的类。Java Bean组件由一些属性和操作这些属性的函数组成7。JDBC技术JDBC(Java Data Base Connectivity,Java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成,JDBC为工具/数据库开发人

36、员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC也是个商标名8。有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事8。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBC API写一个程序就够了,它可向相应数据库发送SQL调用8。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Ja

37、va语言“编写一次,处处运行”的优势8。Servlet技术Servlet是基于线程的技术。每一个Servlet请求都只会产生一个线程,这对于系统的利用率来说是一场革命9。Servlet是MVC的开发技术,所有基于J2EE的MVC框架全都离不开Servlet。一般Servlet用于进行系统的初始化、过滤、服务拦截等操作。Servlet最典型的应用是过滤 器和监听器。数据库连接池技术在数据库使用过程中,数据库的连接是耗时最长,开销最大。在一般情况下的处理方法采用的是:当Servlet响应客户请求时,一旦要求数据库被操作,Servlet便会建立相应的数据库连接并与数据库进行数据交换,交换结束后,关闭

38、数据库的连接10。这样就会造成每响应一次用户请求就会进行一次数据库的连接和关闭,如果同时请求数量很大,那么数据库的连接和关闭的开销将会变得巨大,将会造成系统的负载过重,响应速度也必然会减慢10。很明显,这样的处理方法降低了数据库的连接速度。由于Servlet是基于HTTP协议的,而且HTTP协议属于国际标准协议,因此我们没有办法将Servlet改变。另外Servlet处理完用户请求后,数据库不会保存用户的相关信息。这就导致了同一个用户的请求会当作不同的请求来处理10。也就是说,当同一个用户两次对数据库进行操作,本应连接一次数据库的,但由于HTTP是无状态的协议,因此会连接两次数据库。这就造成数

39、据库连接的时间过长。为了提高数据库的连接效率,中间层数据库的连接可以釆用数据库连接池技术。数据库连接池技术的核心思想是在数据库收到用户请求建立连接之前,先建立一个数据库连接的集合。也就是说,在Servlet第一次被装载时,首先建立一定数量的数据库连接后,放在一个集合对象中,这个对象作为数据库连接的代理,所有数据库连接的访问都将由这个代理进行控制11。当用户需要对数据库进行操作并需要连接数据库时,只需要向数据库连接代理程序申请一个空闲的连接就可以了。数据库连接代理程序将从连接池中选择一个空闲的连接,返回给客户端,并且给这个连接加上标记,说明此连接已被占用,其他用户暂时不可使用。由于这些连接是提前

40、建好的,因此代理程序几乎不需要占用系统资源和时间,就可以为客户端返回一个连接。当连接使用完之后,客户端可以将该连接返回给代理程序,代理程序再将其标记为可用。作为代理程序除了对连接进行操作,它还负责对连接池进行维护。2.1.2 J2EE的在大型企业项目中的优势J2EE为搭建具有可伸缩性、灵活性、易维护性的大型企业项目系统提供了良好的机制:1高效快速的程序开发集成了适合商务应用的EJB的Java平台,具有简洁的结构和跨平台的特性。由于EJB组件技术的成熟,一些通用、复杂的服务器端的任务由组件供应商提供,而应用系统组装商负责让多个组件和应用系统协同工作,因此开发人员可以将更多的精力投入到如何创建商业

41、逻辑上,相应地可以极大的缩短开发时间。2跨平台性由十J2EE旨在为支持Java语言服务器端部署而提供与平台无关的、可移植的、多用户的、安全和标准的企业级平台,因此基于J2EE的应用程序不依赖任何特定操作系统、中间件、硬件。基于J2EE的程序只需编写一次便可以允许与各种不同的平台,最大限度地利用现有的技术投资,并能得到大多数厂商的支持,保护用户投资。3透明性由于Java命名和目录接口(JNDI)可以使组件的位置透明化,而作为可重用组件,从而简化了组件的部署。4新系统和客户原有的资源兼容由于企业必须适应新的商业需求,利用己有的企业信息系统方面的投资,而不是重新制定全盘方案就显得很重要。这样,一个以

42、渐进的方式建立在己有系统之上的服务器端平台机制是公司所需求的。J2EE架构可以充分利用用户原有的投资,这之所以成为可能是因为J2EE拥有广泛的业界支持和一些重要的企业计算领域供应商的参与。每一个供应商都对现有的客户提供了不用废弃己有投资,进入可移植的J2EE领域。2.2 MVC开发模式为了对MVC开发模式有个清楚的认识,本小节将从MVC的概念、优点以及基于J2EE的MVC三个方面对该模式进行说明。2.3.1 MVC模式的概念MVC(Model-View-Controller,模型一视图控制)模型是一种交互界面的结构组织模型,它能够使软件的计算模型独立于界面的构成。MVC模型由Trygve Re

43、enskaug提出,首先被应用在SmallTalk-80环境中,是许多交互和界面系统的构成基础,Microsoft的MFC基础类也遵循了MVC的思想。MVC是Model、View、Controller的缩写,MVC是Application开发的设计模式,也就是大家所知道的Model2。在MVC的设计模式中,它包括二类对象:1模型(Model)对象:是应用程序的核心功能,负责处理用户的数据、实现业务逻辑。同时,模型还为视图的显示提供数据,并可被多个视图所共有。2视图(View)对象:主要指与用户交互的界面,也就是应用程序的外观。视图可以接收用户的输入,但它并不包括实际的业务处理,只是将数据转交给

44、控制器。3控制器(Control)对象:负责接收用户的请求和数据,接着它会作出判断将请求和数据交由哪一个模型来处理,最后调用视图来显示模型返回的数据。Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。View层用于与用户的交互,通常用JSP来实现。Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用十显示,同时它也可以解释用户的输入并将它们映像为模型层可以执行的操作。模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。因

45、此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。这实际上是一种模型的变化-传播机制。MVC应用程序总是由这二个部分纲_成。Event(事件)导致Controller改变Model或View,或者同时改变两者。只要Controller改变了Models的数据或者属性,所有依赖的View都会自动更新。类似的,只要Controller改变了View,VieW会从潜在的Model中获取数据来刷新自己。MVC模式是一个复杂的架构模式,其实现也显得非常复杂,但多种设计模式结合在一起,使MVC模式的实现变得相对简单易行。MVC模式如图2.2所示:图2.2 MVC架构2.2.1

46、 MVC模式的优点MVC模型是一个成熟的开发多层结构应用系统的程序构造模型,它将系统分成应用控制层(Controller)、业务逻辑处理层(Model)和表示层(View),三个层各司其职,所以如果一旦哪一层的需求发生了变化,就只需要更改相应的层中的代码而不会影响到其它层中的代码。在MVC模式中,由于按层把系统分开,那么就能更好的实现开发中的分工。网页设计人员可以进行开发视图层中的JSP,对业务熟悉的开发人员可开发业务层,而其它开发人员可开发控制层。其中表示层与业务逻辑的分离使得表示层部分的独立设计和修改维护更方便。MVC开发模式使得数据访问和数据表现分离开来,让开发人员可以开发一个可伸缩性强

47、、便于扩展的控制器,来维护整个流程。另外,分层后更有利十组件的重用。如控制层可以独立成一个能用的组件,视图层也可做成通用的操作界面。与软件所处理问题的内在模型相比较,用户界面是需要经常发生变化的,采用MVC设计模式可以在满足对界面要求的同时,使软件的计算模型独立十界面的构成。MVC模式可以被映像到多层企业级的J2EE应用上。2.2.2基于J2EE的MVC模型J2EE模型提供了一个很好的企业应用框架及解决方法,但是多层企业应用框架在提高了软件的重用性和分解了问题的复杂性的同时,也使得代码庞大,层与层之间的控制关系复杂。而MVC(Model-View-Controller)模式可以利用控制器将应用的业务逻辑(模型)和应用的表示逻辑(视图)进行分离,使应用的各层之间达到一种松散祸合的效果,所以人们将MVC模式应用于J2EE应用开发。在J2EE企业应用开发中,优先采用MVC模式。首先,它能使软件开发有章可循,结构清晰,缩短开发周期;其次,它能有效地改善软件

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号