1、基于WebGIS的物流信息系统的设计与实现基于WebGIS的物流信息系统的设计与实现作者姓名: 张三一指导教师: 李四二 教授单位名称: 信息科学与工程学院专业名称: 计算机科学与技术东 北 大 学2008年6月Design and Implementation of WebGIS-Based Logistics Information Systemby ZHANG SanyiSupervisor: Professor LI SierNortheastern UniversityJune 2008毕业设计(论文)任务书毕业设计(论文)题目:基于WebGIS的物流信息系统的设计与实现设计(论文)
2、的基本内容:(1) 了解项目开发背景,分析项目进度管理系统功能需求,研究其设计及实现技术。(2) 设计基于WebGIS的物流信息系统总体结构,实现物流企业中业务流程的所有必需功能。作为物流企业的管理软件,系统必需能够实现诸如发送货物、运输货物、装载货物、卸载货物、车辆线路编辑等功能。(3) 总结归纳所完成的任务,弥补不足,以最短的时间用最少的投入实现项目的开发。毕业设计(论文)专题部分:题目:设计或论文专题的基本内容:学生接受毕业设计(论文)题目日期第1周指导教师签字:2007年3月5日基于WebGIS的物流信息系统的设计与实现摘 要随着经济的发展和通信技术的提高,物流作为一种先进的组织方式和
3、管理技术,被广泛认为是企业在降低消耗和提高劳动生产率以外的重要的利润源泉,在国民经济和社会发展中发挥着重要作用。本文在物流企业的正常运营中,基于GIS的信息系统已经成为不可或缺的管理工具。在对WebGIS技术和物流企业需求进行分析的基础上,结合不同企业的业务流程的具体特点,设计了一套扩展性较强的基于WebGIS的物流信息系统。系统的主要功能是将企业管理人员与运输车辆之间通过服务器连接起来,实现物流系统的监控和管理。系统采用B/S架构,服务器端通过网络与车辆终端通信,向车辆发送控制信息并获取车辆的当前状态。同时它还和Web客户端进行交互,向客户端提供地图服务,并执行Web客户端的请求。Web客户
4、端采用Ajax技术与服务器端进行通信,通过动态地图监控车辆。它还实现了发送货物、编辑线路、发送消息等功能。考虑到可扩展性,系统重点实现了服务器端进行消息中转的消息队列,建立了Web客户端到车辆终端之间的消息通路,并可以随时更新消息队列中消息处理方式。本系统实现了物流系统的主要功能,极大提高了企业的管理水平。本文首先进行了系统的需求获取和业务分析。然后,采用分层的方法对系统进行设计,叙述了消息队列框架的详细设计与实现,并叙述了服务器端和客户端功能模块的设计和实现。并通过对系统的测试,对其功能和性能进行评估。最后,进行了总结,介绍了系统的特点和不足之处,指出了下一步的工作方向。关键词:物流;Web
5、GIS;消息队列Design and Implementation of WebGIS-Based Logistics Information SystemAbstractWith development of economy and improvement of communication technology, as an advanced mode of organization and management skill, logistics is widely considered to be the major source of profits in the enterprise
6、besides reducing consumption and raising labor productivity. It plays an important role in the national economy and social development. The GIS-based information system has become an indispensable management tool in the regular business of logistics enterprise. Based on the analysis of the WebGIS te
7、chnology and requirements of logistics enterprise, a WebGIS-based logistics information system with high expansibility is designed, according to specific business processes of various logistics enterprises.The major function of the system is to make manager communicated with vehicles via the server,
8、 and to realize monitoring and management of logistics system. The B/S architecture is adopted in the system. The server communicates with vehicles through network, sending them control data and receiving status data from them. At the same time, server interacts with Web clients, providing web map s
9、ervice and executing client requests. Web client communicates with server with Ajax technology, monitoring vehicles by watching dynamic maps. It also implements functions such as sending cargo, editing route, sending message, etc. Aiming at high expansibility of the system, message queue kept in ser
10、ver is seriously implemented. It means that a message channel between the Web client and vehicles is established, and the handling methods of the messages in message queue can be updated at any time. The system meets primary requirements and enhances management quality of customer.Firstly, in this t
11、hesis the requirement elicitation and the business analysis are completed. Then system is designed into multi-layer architecture. The particular design and implementation of message queue framework are described. Design and implementation of the functional modules of server and client are presented.
12、 Function and capability of the system are evaluated through test. At last, system traits and deficiencies are summarized, and next tasks are pointed out.Keywords:Logistics; WebGIS; Message Queue毕业设计(论文)任务书 I摘 要 IIAbstract III第1章 引 言 51.1 课题研究的背景和来源 51.2 课题研究成果应用的实际意义 51.3 本文的内容及主要工作 5第2章 相关技术简介 52.
13、1 GIS 技术 52.2 WebGIS 技术 52.2.1 WebGIS介绍 52.2.2 WebGIS协议介绍 52.2.3 WebGIS的开源平台 52.3 Ajax 架构 52.4 Spring 架构 52.5 本章小结 5第3章 需求分析 53.1 系统实现目标 53.2 系统运行环境 53.3 系统的开发环境 53.4 功能性需求描述 53.4.1 发送货物 53.4.2 查询货物状态 53.4.3 提货 53.4.4 查询系统信息 53.4.5 配置车辆线路 53.4.6 实时显示系统信息 53.4.7 传递消息 53.4.8 发送实时状态信息 53.4.9 车辆完成运输段 5
14、5 53.5 非功能性需求描述 53.6 系统术语表 53.7 本章小结 5第4章 系统设计 54.1 系统设计原则 54.2 系统总体设计 54.3 数据访问层设计 54.4 服务层设计 54.5 Web服务层设计 54.6 消息处理部分设计 54.6.1 消息队列设计 54.6.2 消息处理具体功能设计 54.6.3 Socket控制层详细设计 54.7 系统业务功能设计 54.7.1 货物发送功能设计 54.7.2 线路编辑功能设计 54.7.3 货物运输功能设计 54.7.4 权限操作功能设计 54.8 数据库设计 54.8.1 发货操作模块的表设计 54.8.2 线路编辑模块的表设计
15、 54.8.3 货物运输模块的表设计 54.8.4 权限控制模块的表设计 54.8.5 消息处理模块的表设计 54.9 本章小结 5第5章 系统实现 55.1 地图数据传输与显示 55.2 客户端设计与实现 55.2.1 JavaScript语言面向对象编程 55.2.2 客户端请求协议和请求流程实现 55.2.3 客户端框架实现 55.3 系统安全控制实现 55.4 货物处理模块的实现 55.5 消息处理模块的实现 55.6 本章小结 5第6章 系统测试 56.1 单元测试 56.2 集成测试 56.3 系统测试 56.4 本章小结 5第7章 结 论 57.1 本文工作总结 57.2 进一步
16、展望 5参考文献 5致 谢 5第1章 引 言课题研究的背景和来源随着现代科学技术迅猛发展,全球经济一体化的趋势加强,各国都面临着前所未有的机遇和挑战。物流作为一种先进的组织方式和管理技术,被广泛认为是企业在降低物资消耗,提高劳动生产率以外的重要的利润源泉,在国民经济和社会发展中发挥着重要作用。物流业产生于20世纪60年代,发展到90年代,是以满足客户要求为目的,对货物、服务和相关信息在产出地和销售之间的实现高效率和低成本的正向和逆向的流动和存储所进行的计划执行和控制过程。由于现代生产技术的发展,产品的生命周期越来越短,在社会生产开始由单一品种的大批量生产向小批量、多品种定制化生产的同时,物流业
17、开始由大批量、长周期的物流向小批量、多频次的方向发展,使物流的控制越来越复杂。随着科学技术特别是信息技术的发展,信息化的物流使企业能够在全球范围内进行超时空的交易,又促进了物流业的进一步发展与繁荣。在整个物流决策中,运输成本占到物流总成本的35%50%左右。所以,物流信息化的重点在于物流运输系统信息化1。物流信息化的技术主要包括:全球定位系统(GPS)、地理信息系统(Geographic Information System , GIS)、射频(RF)、条形码和电子数据交换技术等。其中GIS技术起到一个非常重要的作用。GIS是一种以采集、贮存、管理、分析和描述整个或部分地球表面与空间地理分布有
18、关数据的空间信息系统。在现代信息社会里,GIS作为一种集地理空间特征和各种统计信息为一体的特殊信息系统,是信息高速公路上的节点和基础设施,受到全社会的广泛关注,成为目前国内热门的研究课题。GPRS,GPS技术的发展又为GIS数据的实时获取和实时传输奠定了坚实的基础。基于GIS的系统已经开始在各个领域出现。尤其以交通运输、物流、森林数据分布等与地理数据关系最为紧密的领域为甚。在物流系统中,GIS技术可以在模型参考数据、车辆监控和实时调度、监控车辆位置与状态、车辆导航以及选择最佳路径等大量涉及空间数据和属性数据的世纪应用中,提供有效的管理和科学决策依据2。对于基于C/S架构的GIS系统来说,服务器
19、负责收集实时的地理数据,客户端负责访问。这种架构虽然能够充分利用客户端计算机的计算能力,降低服务器所承受到的压力。但是弊端也是很明显的,客户端过分臃肿,数据完整性不可控,不能适应复杂网络环境,安全性得不到保障,功能可扩展性低,代码维护困难重重和服务器资源浪费等。无法胜任分布式应用系统的复杂性,客户端软件系统只能运行在单一操作系统平台上,采用相同的网络传输协议等局限都大大影响了软件系统的可部署环境,这样就增加了企业在硬件及网络资源重复性投入的成本。可扩展性受到限制,软件系统被安装在客户端,一旦软件发现Bug,软件需要升级,对软件的修改将是企业的一笔不小的开支。对于GIS系统来说,数据源可能分布在
20、多个不同地点,客户端也分布在不同的地点,那么整个系统在物理架构上来说就是一个分布式的系统。对于这种系统来说,要提高系统的运行效率、适应复杂的网络环境、降低维护费用,那么B/S架构相对于C/S架构有更大的潜力。随着Web技术的发展,Web技术与GIS相结合产生的WebGIS成为GIS技术发展的必然趋势。相对于传统的C/S架构的GIS系统。WebGIS系统采用B/S架构。部署和升级时只需要对服务器进行操作,节省了企业的资源。目前Web软件架构的发展,使得B/S架构已经向多层架构的方向发展,一般由客户端、Web服务层、应用服务层、数据层等组成。客户端即浏览器,负责用户的输入和结果的显示;Web服务层
21、提供JSP或者Servlet等的开发、部署和运行,为客户端准备前端显示页面代码;应用服务层实现企业业务逻辑和业务实体,并提供开发、部署和运行环境,同时该层也提供对分布式网络环境的支持,使得Web软件架构具备跨操作系统平台和跨网络传输协议等优势;数据层封装了数据库的底层操作,包括添加、查询、修改和删除等。B/S可分布式的架构能够明显减轻各个服务器的负载,提高系统的整体运行速度。通过B/S架构提供的WebService服务,客户端能够利用JavaScript代码控制对各个WebService的访问顺序,从而轻松地修改业务操作的实现流程,这对于业务流程比较相似的物流企业来说,意味着开发出来的系统经过
22、简单配置能够方便地运用到其他企业的运营管理中,大大提高了可系统的扩展性和复用性。综上所述,需要一套基于WebGIS的物流信息系统来优化物流系统的流程,提高企业的运行效率,降低运营成本。课题研究成果应用的实际意义本文研究的主要目的是实现一个Web客户端到GIS数据源之间进行消息传输的通用框架,并在此基础上实现物流系统需求的功能。由于各个企业有各自的业务流程和数据表示方法,平时开发的过程中需要对不同的企业实现不同的数据结构和业务流程。而在系统开发的时候往往针对一个企业进行数据定义和建模开发。这种开发方式偏重于应用,没有过多的考虑系统的复用。如果需求有了变化,往往要大面积地修改代码,甚至是重新开发。
23、这样就浪费了大量的人力物力。要达到降低开发成本的目的,最直接的方法就是复用以前的系统。但是企业之间业务流程和数据表达方式的差异提高了系统复用的门槛,降低了不同企业之间软件复用的可能性。但是对于物流系统来说,它们处理货物的业务流程过程中数据流向和处理处理方式是相同的,只是存在不多的差异。而在基于WebGIS的系统中,由于GIS数据源和Web客户端的抽象化,使得它们与服务器之间的数据流动更加清晰。最终能够整理出一份关于Web客户端和服务器进行交互的通用需求和一份物流系统货物处理流程的通用需求。在软件复用中,如果一系列的系统共享特定的领域中的明确需求,那么这一系列的系统构成软件的产品线。它们之间能够
24、共享架构,从而缩短类似系统的开发时间,提高开发的效率3。所以本系统可以侧重架构设计,从而产生一个能够复用的,支持GIS数据源、服务器、Web客户端之间进行数据流动和数据处理的架构。架构确定了系统整体结构、层次划分、不同部分之间的协作关系以后,所形成的具体实现组成了可复用的框架。框架的作用,在于确定企业各种业务的具体技术实现,并规定它们在系统中的组织方式和协作方式,从而组成完整的企业应用解决方案,快速的完成系统开发4。在框架的基础上,实现物流系统处理货物流程的通用需求,提供尽可能小的WebService接口。这样,Web客户端可以利用Ajax技术和服务器交互,将WebService提供的服务连接
25、起来,组成具体的业务流程。本课题研究的系统,就是要通过Web服务器在企业的不同GIS数据源和Web客户单的管理人员之间搭建一个实时的数据传输和处理架构,产生适用于WebGIS系统的通用模板。并在此基础上添加数据结构和业务处理流程,实现物流企业中货物输入、线路定义、车辆监控、实时消息传输等功能。考虑到物流企业需求之间的相似性,本系统的构建的框架可以经过简单的配置并添加适当的数据结构,直接应用到其他的企业中。本文的内容及主要工作本文在分析介绍了WebGIS技术,WMS/WMF协议、WebGIS相关的组件的基础上,基于物流系统的需求特点,介绍了GIS数据转发传输和处理架构,并且实现了物流系统的基本功
26、能。各章的内容组织如下:第2章介绍了GIS技术、WebGIS技术的协议和开源平台、Ajax技术以及Spring框架技术;第3章分析了系统的开发环境,利用用例建模分析系统的功能需求,并且根据实际情况补充了部分需求,提出了非功能性需求,并描述了系统术语表;第4章对系统进行总体设计,并对服务层、Web服务层、数据访问层、消息处理部分、socket控制层等进行详细设计,对系统中货物运输、线路编辑、权限控制、发送货物等功能进行了详细设计,对介绍了系统中数据库表;第5章主要介绍了JavaScript语言的面向对象和事件驱动的实现,展示了Web客户端根据相关协议与服务器交互的流程,并介绍了客户端框架的实现以
27、及定时更新机制的实现。最后是服务器端的具体实现,展示了安全控制机制下用户访问服务器的流程、货物从发货到最后提货的整个处理流程,重点介绍了消息在管理人员、服务器端、车辆终端之间进行交互的传输和处理流程;第6章介绍了利用工具进行测试的情况,并对出现的错误进行了分析解决;第7章结论部分是对整个论文工作的总结以及下一步工作的展望,指出我们工作中有待改进的地方,同时指明了下一步的研究方向。第2章 相关技术简介GIS 技术GIS是以采集、存储、管理、分析、描述和应用整个或部分地球表面(包括大气层在内)与空间和地理分布有关的数据的计算机系统。它由硬件、软件、数据和用户有机结合而构成。GIS要实现的五个基本功
28、能为:数据输入、数据编辑、数据存储与管理、空间查询与空间分析以及图形输出与交互操作。GIS始于60年代的加拿大与美国,尔后各国相继投入了大量的研究工作,自80年代末以来,随着计算机技术的飞速发展,地理信息的处理、分析手段日趋先进,GIS技术日臻成熟,已广泛地应用于环境、资源、石油、电力、土地、交通、公安、急救、航空、市政治理、城市规划、经济咨询、灾难损失猜测、投资评价、政府治理和军事等与地理坐标相关的几乎所有领域。GIS技术依托的主要工具和平台是计算机及其相关设备。进入90年代以来,随着计算机技术的发展,计算机微处理器的处理速度愈来愈快,性能价格比更高;其存储器能实现将大型文件映射至内存的能力
29、,并且能存储海量数据。此外,随着多媒体技术、空间技术、虚拟实景、数字测绘技术、数据仓库技术、计算机图形技术、三维图形芯片、大容量光盘技术及宽频光纤通讯技术的突破性进展,消除数据通讯瓶颈的卫星互联网的建立,以及能够提供接近实时对地观测图像的高分辨、高光谱、短周期遥感卫星的大量发射,这些为GIS技术的广泛、深入应用展示了更加光明的前景。同时,也使当前的GIS已不能满足信息时代、数字时代的要求,目前GIS总体上呈现网络化、开放性、虚拟现实、集成化、空间多维性等发展趋势。WebGIS 技术2.1.1 WebGIS介绍WebGIS是GIS技术与WWW技术的结合,是在Internet网络环境下的一种传输、
30、存储、处理、分析和显示与应用地理信息的计算机系统。称之为WebGIS的原因是大多数客户端应用采用了WWW协议。在Internet的支持下,根据TCP/IP和HTTP协议,WebGIS把支持标准的HTML的浏览器作为统一的客户端,所以狭义地讲WebGIS是一种在Internet上发展起来的新技术,其核心是将GIS功能嵌入到满足HTTP和TCP/IP标准的Internet应用体系中,实现Internet环境下地理信息的有效管理和处理。与传统的地理信息系统相比较,WebGIS有如下特点:(1) 更广泛的客户访问范围。客户可以同时访问多个位于不同地方的服务器上的最新数据,而Internet所特有的优势
31、大大扩展了GIS的数据的处理能力,增强了空间数据的时效性。(2) 客户端的平台独立性。无论客户机是何种操作系统,只要支持通用的Web浏览器,用户就可以访问GIS数据及服务器所提供的服务。(3) 更简单的操作。要推广GIS,使GIS系统为广大的普通用户所接受,而不仅仅局限于少数受过专业培训的用户,就要降低对系统的操作难度。通过Web浏览器提供友好的用户界面无疑是一种很好的选择。(4) 更高效的计算负载平衡。传统的GIS大都使用文件服务器结构的处理方式,其处理能力完全依赖客户端,效率较低。而当今的一些高级的WebGIS能充分利用网络资源,将复杂的处理交由服务器处理,而简单的操作则由客户端直接完成。
32、这种计算能灵活地在服务器端和客户端之间合理地分配处理任务,提高网络资源的利用效率,提高了系统的性能。(5) 分布式的系统。Internet的一个特点就是它可以访问分布式数据库和执行分布式处理,即信息和应用可以部署在跨越整个Internet的不同计算机上。GIS数据和分析工具是独立的组件和模块,WebGIS利用Internet的这种分布式系统把GIS数据和分析工具部署在网络不同的计算机上,用户可以从网络的任何地方访问这些数据和应用程序,不需要在本地计算机上安装GIS数据和应用程序,只要把请求发送到服务器,服务器就会把数据和分析工具模块传送给用户,达到实时部署的性能。(6) 动态性。由于WebGIS是分布式系统,数据与应用程序部署在不同的计算机上,随时可能被管理员更新,对于Int
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1