东北大学计算机科学与技术专业本科毕业设计方案论文示例

上传人:红**** 文档编号:168334723 上传时间:2022-11-09 格式:DOC 页数:88 大小:2.83MB
收藏 版权申诉 举报 下载
东北大学计算机科学与技术专业本科毕业设计方案论文示例_第1页
第1页 / 共88页
东北大学计算机科学与技术专业本科毕业设计方案论文示例_第2页
第2页 / 共88页
东北大学计算机科学与技术专业本科毕业设计方案论文示例_第3页
第3页 / 共88页
资源描述:

《东北大学计算机科学与技术专业本科毕业设计方案论文示例》由会员分享,可在线阅读,更多相关《东北大学计算机科学与技术专业本科毕业设计方案论文示例(88页珍藏版)》请在装配图网上搜索。

1、东北大学计算机科学与技术专业本科毕业设计方案论文示例基于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客户端到车辆终端之间的消息通路,并可以随时更新消息队列中消息处理方式。本系统实现了物流系统的主要功能,极大提高了企业的管理水平。本文首先进行了系统的需求获取和业务分析。然后,采用分层的方法对系统进行设计,叙述了消息队列框架的详细设计与实现,并叙述了服务器端和客户端功能模块的设计和实现。并通过对系统的测试,对其功能和性能进行评估。最后,进行了总结,介绍了系统的特点和不足之处,指出了下一步的工作方向。专业排版,专业论文

5、写作修改 降低论文重复率 制作答辩幻灯片免费提供论文下载 论文指导等服务免费咨询请联系淘宝旺旺:文交天下友淘宝搜索 文天下关键词:物流;WebGIS;消息队列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

6、 widely considered to be the major source of profits in the enterprise 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 b

7、usiness of logistics enterprise. Based on the analysis of the WebGIS technology 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 t

8、he system is to make manager communicated with vehicles via the server, 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. A

9、t the same time, server interacts with Web clients, providing web map service 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

10、. Aiming at high expansibility of the system, message queue kept in server 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 requ

11、irements and enhances management quality of customer.Firstly, in this thesis 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 imple

12、mentation of the functional modules of server and client are presented. 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摘 要IIABSTRACTIII第1章

13、 引 言11.1 课题研究的背景和来源11.2 课题研究成果应用的实际意义21.3 本文的内容及主要工作3第2章 相关技术简介52.1 GIS 技术52.2 WebGIS 技术52.2.1 WebGIS介绍52.2.2 WebGIS协议介绍72.2.3 WebGIS的开源平台92.3 Ajax 架构112.4 Spring 架构112.5 本章小结12第3章 需求分析133.1 系统实现目标133.2 系统运行环境133.3 系统的开发环境143.4 功能性需求描述143.4.1 发送货物153.4.2 查询货物状态163.4.3 提货163.4.4 查询系统信息163.4.5 配置车辆线路1

14、63.4.6 实时显示系统信息173.4.7 传递消息173.4.8 发送实时状态信息173.4.9 车辆完成运输段183.4.10 操作货物183.4.11 补充需求183.5 非功能性需求描述193.6 系统术语表193.7 本章小结20第4章 系统设计214.1 系统设计原则214.2 系统总体设计214.3 数据访问层设计224.4 服务层设计234.5 Web服务层设计254.6 消息处理部分设计264.6.1 消息队列设计274.6.2 消息处理具体功能设计284.6.3 Socket控制层详细设计294.7 系统业务功能设计314.7.1 货物发送功能设计314.7.2 线路编辑

15、功能设计334.7.3 货物运输功能设计344.7.4 权限操作功能设计354.8 数据库设计374.8.1 发货操作模块的表设计374.8.2 线路编辑模块的表设计384.8.3 货物运输模块的表设计384.8.4 权限控制模块的表设计414.8.5 消息处理模块的表设计414.9 本章小结42第5章 系统实现435.1 地图数据传输与显示435.2 客户端设计与实现465.2.1 JavaScript语言面向对象编程465.2.2 客户端请求协议和请求流程实现485.2.3 客户端框架实现495.3 系统安全控制实现525.4 货物处理模块的实现535.5 消息处理模块的实现565.6 本

16、章小结58第6章 系统测试596.1 单元测试596.2 集成测试606.3 系统测试616.4 本章小结63第7章 结 论657.1 本文工作总结657.2 进一步展望65参考文献67致 谢69第1章 引 言1.1 课题研究的背景和来源随着现代科学技术迅猛发展,全球经济一体化的趋势加强,各国都面临着前所未有的机遇和挑战。物流作为一种先进的组织方式和管理技术,被广泛认为是企业在降低物资消耗,提高劳动生产率以外的重要的利润源泉,在国民经济和社会发展中发挥着重要作用。物流业产生于20世纪60年代,发展到90年代,是以满足客户要求为目的,对货物、服务和相关信息在产出地和销售之间的实现高效率和低成本的

17、正向和逆向的流动和存储所进行的计划执行和控制过程。由于现代生产技术的发展,产品的生命周期越来越短,在社会生产开始由单一品种的大批量生产向小批量、多品种定制化生产的同时,物流业开始由大批量、长周期的物流向小批量、多频次的方向发展,使物流的控制越来越复杂。随着科学技术特别是信息技术的发展,信息化的物流使企业能够在全球范围内进行超时空的交易,又促进了物流业的进一步发展与繁荣。在整个物流决策中,运输成本占到物流总成本的35%50%左右。所以,物流信息化的重点在于物流运输系统信息化1。物流信息化的技术主要包括:全球定位系统(GPS)、地理信息系统(Geographic Information Syste

18、m , GIS)、射频(RF)、条形码和电子数据交换技术等。其中GIS技术起到一个非常重要的作用。GIS是一种以采集、贮存、管理、分析和描述整个或部分地球表面与空间地理分布有关数据的空间信息系统。在现代信息社会里,GIS作为一种集地理空间特征和各种统计信息为一体的特殊信息系统,是信息高速公路上的节点和基础设施,受到全社会的广泛关注,成为目前国内热门的研究课题。GPRS,GPS技术的发展又为GIS数据的实时获取和实时传输奠定了坚实的基础。基于GIS的系统已经开始在各个领域出现。尤其以交通运输、物流、森林数据分布等与地理数据关系最为紧密的领域为甚。在物流系统中,GIS技术可以在模型参考数据、车辆监

19、控和实时调度、监控车辆位置与状态、车辆导航以及选择最佳路径等大量涉及空间数据和属性数据的世纪应用中,提供有效的管理和科学决策依据2。对于基于C/S架构的GIS系统来说,服务器负责收集实时的地理数据,客户端负责访问。这种架构虽然能够充分利用客户端计算机的计算能力,降低服务器所承受到的压力。但是弊端也是很明显的,客户端过分臃肿,数据完整性不可控,不能适应复杂网络环境,安全性得不到保障,功能可扩展性低,代码维护困难重重和服务器资源浪费等。无法胜任分布式应用系统的复杂性,客户端软件系统只能运行在单一操作系统平台上,采用相同的网络传输协议等局限都大大影响了软件系统的可部署环境,这样就增加了企业在硬件及网

20、络资源重复性投入的成本。可扩展性受到限制,软件系统被安装在客户端,一旦软件发现Bug,软件需要升级,对软件的修改将是企业的一笔不小的开支。对于GIS系统来说,数据源可能分布在多个不同地点,客户端也分布在不同的地点,那么整个系统在物理架构上来说就是一个分布式的系统。对于这种系统来说,要提高系统的运行效率、适应复杂的网络环境、降低维护费用,那么B/S架构相对于C/S架构有更大的潜力。随着Web技术的发展,Web技术与GIS相结合产生的WebGIS成为GIS技术发展的必然趋势。相对于传统的C/S架构的GIS系统。WebGIS系统采用B/S架构。部署和升级时只需要对服务器进行操作,节省了企业的资源。目

21、前Web软件架构的发展,使得B/S架构已经向多层架构的方向发展,一般由客户端、Web服务层、应用服务层、数据层等组成。客户端即浏览器,负责用户的输入和结果的显示;Web服务层提供JSP或者Servlet等的开发、部署和运行,为客户端准备前端显示页面代码;应用服务层实现企业业务逻辑和业务实体,并提供开发、部署和运行环境,同时该层也提供对分布式网络环境的支持,使得Web软件架构具备跨操作系统平台和跨网络传输协议等优势;数据层封装了数据库的底层操作,包括添加、查询、修改和删除等。B/S可分布式的架构能够明显减轻各个服务器的负载,提高系统的整体运行速度。通过B/S架构提供的WebService服务,客

22、户端能够利用JavaScript代码控制对各个WebService的访问顺序,从而轻松地修改业务操作的实现流程,这对于业务流程比较相似的物流企业来说,意味着开发出来的系统经过简单配置能够方便地运用到其他企业的运营管理中,大大提高了可系统的扩展性和复用性。综上所述,需要一套基于WebGIS的物流信息系统来优化物流系统的流程,提高企业的运行效率,降低运营成本。1.2 课题研究成果应用的实际意义本文研究的主要目的是实现一个Web客户端到GIS数据源之间进行消息传输的通用框架,并在此基础上实现物流系统需求的功能。由于各个企业有各自的业务流程和数据表示方法,平时开发的过程中需要对不同的企业实现不同的数据

23、结构和业务流程。而在系统开发的时候往往针对一个企业进行数据定义和建模开发。这种开发方式偏重于应用,没有过多的考虑系统的复用。如果需求有了变化,往往要大面积地修改代码,甚至是重新开发。这样就浪费了大量的人力物力。要达到降低开发成本的目的,最直接的方法就是复用以前的系统。但是企业之间业务流程和数据表达方式的差异提高了系统复用的门槛,降低了不同企业之间软件复用的可能性。但是对于物流系统来说,它们处理货物的业务流程过程中数据流向和处理处理方式是相同的,只是存在不多的差异。而在基于WebGIS的系统中,由于GIS数据源和Web客户端的抽象化,使得它们与服务器之间的数据流动更加清晰。最终能够整理出一份关于

24、Web客户端和服务器进行交互的通用需求和一份物流系统货物处理流程的通用需求。在软件复用中,如果一系列的系统共享特定的领域中的明确需求,那么这一系列的系统构成软件的产品线。它们之间能够共享架构,从而缩短类似系统的开发时间,提高开发的效率3。所以本系统可以侧重架构设计,从而产生一个能够复用的,支持GIS数据源、服务器、Web客户端之间进行数据流动和数据处理的架构。架构确定了系统整体结构、层次划分、不同部分之间的协作关系以后,所形成的具体实现组成了可复用的框架。框架的作用,在于确定企业各种业务的具体技术实现,并规定它们在系统中的组织方式和协作方式,从而组成完整的企业应用解决方案,快速的完成系统开发4

25、。在框架的基础上,实现物流系统处理货物流程的通用需求,提供尽可能小的WebService接口。这样,Web客户端可以利用Ajax技术和服务器交互,将WebService提供的服务连接起来,组成具体的业务流程。本课题研究的系统,就是要通过Web服务器在企业的不同GIS数据源和Web客户单的管理人员之间搭建一个实时的数据传输和处理架构,产生适用于WebGIS系统的通用模板。并在此基础上添加数据结构和业务处理流程,实现物流企业中货物输入、线路定义、车辆监控、实时消息传输等功能。考虑到物流企业需求之间的相似性,本系统的构建的框架可以经过简单的配置并添加适当的数据结构,直接应用到其他的企业中。1.3 本

26、文的内容及主要工作本文在分析介绍了WebGIS技术,WMS/WMF协议、WebGIS相关的组件的基础上,基于物流系统的需求特点,介绍了GIS数据转发传输和处理架构,并且实现了物流系统的基本功能。各章的内容组织如下:第2章介绍了GIS技术、WebGIS技术的协议和开源平台、Ajax技术以及Spring框架技术;第3章分析了系统的开发环境,利用用例建模分析系统的功能需求,并且根据实际情况补充了部分需求,提出了非功能性需求,并描述了系统术语表;第4章对系统进行总体设计,并对服务层、Web服务层、数据访问层、消息处理部分、socket控制层等进行详细设计,对系统中货物运输、线路编辑、权限控制、发送货物

27、等功能进行了详细设计,对介绍了系统中数据库表;第5章主要介绍了JavaScript语言的面向对象和事件驱动的实现,展示了Web客户端根据相关协议与服务器交互的流程,并介绍了客户端框架的实现以及定时更新机制的实现。最后是服务器端的具体实现,展示了安全控制机制下用户访问服务器的流程、货物从发货到最后提货的整个处理流程,重点介绍了消息在管理人员、服务器端、车辆终端之间进行交互的传输和处理流程;第6章介绍了利用工具进行测试的情况,并对出现的错误进行了分析解决;第7章结论部分是对整个论文工作的总结以及下一步工作的展望,指出我们工作中有待改进的地方,同时指明了下一步的研究方向。第2章 相关技术简介2.1

28、GIS 技术GIS是以采集、存储、管理、分析、描述和应用整个或部分地球表面(包括大气层在内)与空间和地理分布有关的数据的计算机系统。它由硬件、软件、数据和用户有机结合而构成。GIS要实现的五个基本功能为:数据输入、数据编辑、数据存储与管理、空间查询与空间分析以及图形输出与交互操作。GIS始于60年代的加拿大与美国,尔后各国相继投入了大量的研究工作,自80年代末以来,随着计算机技术的飞速发展,地理信息的处理、分析手段日趋先进,GIS技术日臻成熟,已广泛地应用于环境、资源、石油、电力、土地、交通、公安、急救、航空、市政治理、城市规划、经济咨询、灾难损失猜测、投资评价、政府治理和军事等与地理坐标相关

29、的几乎所有领域。GIS技术依托的主要工具和平台是计算机及其相关设备。进入90年代以来,随着计算机技术的发展,计算机微处理器的处理速度愈来愈快,性能价格比更高;其存储器能实现将大型文件映射至内存的能力,并且能存储海量数据。此外,随着多媒体技术、空间技术、虚拟实景、数字测绘技术、数据仓库技术、计算机图形技术、三维图形芯片、大容量光盘技术及宽频光纤通讯技术的突破性进展,消除数据通讯瓶颈的卫星互联网的建立,以及能够提供接近实时对地观测图像的高分辨、高光谱、短周期遥感卫星的大量发射,这些为GIS技术的广泛、深入应用展示了更加光明的前景。同时,也使当前的GIS已不能满足信息时代、数字时代的要求,目前GIS

30、总体上呈现网络化、开放性、虚拟现实、集成化、空间多维性等发展趋势。2.2 WebGIS 技术2.2.1 WebGIS介绍WebGIS是GIS技术与WWW技术的结合,是在Internet网络环境下的一种传输、存储、处理、分析和显示与应用地理信息的计算机系统。称之为WebGIS的原因是大多数客户端应用采用了WWW协议。在Internet的支持下,根据TCP/IP和HTTP协议,WebGIS把支持标准的HTML的浏览器作为统一的客户端,所以狭义地讲WebGIS是一种在Internet上发展起来的新技术,其核心是将GIS功能嵌入到满足HTTP和TCP/IP标准的Internet应用体系中,实现Inte

31、rnet环境下地理信息的有效管理和处理。与传统的地理信息系统相比较,WebGIS有如下特点:(1) 更广泛的客户访问范围。客户可以同时访问多个位于不同地方的服务器上的最新数据,而Internet所特有的优势大大扩展了GIS的数据的处理能力,增强了空间数据的时效性。(2) 客户端的平台独立性。无论客户机是何种操作系统,只要支持通用的Web浏览器,用户就可以访问GIS数据及服务器所提供的服务。(3) 更简单的操作。要推广GIS,使GIS系统为广大的普通用户所接受,而不仅仅局限于少数受过专业培训的用户,就要降低对系统的操作难度。通过Web浏览器提供友好的用户界面无疑是一种很好的选择。(4) 更高效的

32、计算负载平衡。传统的GIS大都使用文件服务器结构的处理方式,其处理能力完全依赖客户端,效率较低。而当今的一些高级的WebGIS能充分利用网络资源,将复杂的处理交由服务器处理,而简单的操作则由客户端直接完成。这种计算能灵活地在服务器端和客户端之间合理地分配处理任务,提高网络资源的利用效率,提高了系统的性能。(5) 分布式的系统。Internet的一个特点就是它可以访问分布式数据库和执行分布式处理,即信息和应用可以部署在跨越整个Internet的不同计算机上。GIS数据和分析工具是独立的组件和模块,WebGIS利用Internet的这种分布式系统把GIS数据和分析工具部署在网络不同的计算机上,用户

33、可以从网络的任何地方访问这些数据和应用程序,不需要在本地计算机上安装GIS数据和应用程序,只要把请求发送到服务器,服务器就会把数据和分析工具模块传送给用户,达到实时部署的性能。(6) 动态性。由于WebGIS是分布式系统,数据与应用程序部署在不同的计算机上,随时可能被管理员更新,对于Internet上的每一个用户来说,都能得到最新的数据和应用程序的最新版本,只要数据源发生变化,和数据源的动态连接将保持数据的实时性。(7) 交互性。WebGIS可使用户在Internet上操作GIS地图和数据,用Web浏览器(IE,Netscape 等)执行部分基本的GIS功能:如缩放,漫游,查询和标注,甚至可以

34、执行空间查询:如“离你最近的旅馆或饭店在哪儿”,或者更先进的空间分析:比如缓冲分析和网络分析等。在Web上使用WebGIS就和在本地计算机上使用桌面GIS软件一样。(8) 经济性。一般专业的GIS软件非常昂贵,而对于普通用户来说,只使用一些最基本的功能,想购买专业软件显得不太可能,也不经济。WebGIS在客户端只需要浏览器,GIS数据和GIS软件的管理与维护基本上由服务器完成,因此系统成本比以往全套GIS软件平台要少得多,客户端软件的简单化节省的维护费用也是很可观的。2.2.2 WebGIS协议介绍开放式地理信息系统协会(Open GIS Consortium, OGC)是非营利、国际自发性、

35、研究地理信息系统标准的国际组织。OGC所提供的规范是帮助GIS开发者创造一个高效、无隔阂和透明的地理信息系统使用、分析、处理的环境5。开放式地理信息系统(OpenGIS)正是由OGC提出的一个为了实现开放式地理信息系统而提出的开放式地理空间数据互操作规范。按照OpenGIS的规范,可以构造一个能获取分布式地理空间数据和空间服务资源的软件框架。OpenGIS给全世界的软件开发商一个详细的通用界面模板,使得不同开发商依照OpenGIS开发出来的不同GIS软件能够进行互操作。OpenGIS围绕着地理空间信息共享和提供地理空间处理服务两个技术目标,主要包括三部分内容:开放式地理空间数据模型、OpenG

36、IS服务模型和信息团体模型。其中与WebGIS有关的协议主要有:GML(Geography Markup Language),WFS(Web Feature Service),WMS(Web Map Service),SLD(Styled Layer Descriptor),WCS(Web Coverage Service) 和WSCS(Web Services Common Specification)等规范6。其中GML、WMS、WFS和WCS可以作为Web服务的空间数据服务规范,又可以作为空间数据的互操作实现。只要某一个GIS软件支持这个接口,部署在本地服务器上,其他GIS软件就可以通过

37、这个接口得到所需要的数据。2.2.2.1 GML协议GML是一种用于建模、传输和存储地理及与地理相关信息的XML编码语言,它包括了地理要素(Feature)与层(Coverage)的空间与非空间特征。GML建立在W3C系列标准之上,以一种互联网上容易共享的方式来描述、表达地理信息,是第一个被GIS界广泛接受的元标记语言。在这之前开发的各种用于存储和交换地理信息的文件格式或标准,由于缺少相应的支持工具,而没有被广泛接受。GML的一个重要优势就是它能够让开发者或用户非常灵活地使用已被广泛接受的XML技术,它建立在XML、XML Schema、XLink和XPointer基础之上,GML数据能够很容

38、易地与非空间数据集成使用。GML使用XML对地理数据进行编码,为开发商和用户提供了一种开放的、中立于任何厂商的地理数据建模框架,使地理信息能够在不同领域、不同部门进行语义共享。 GML采用要素来描述地理实体和地理现象,GML要素是通过其属性(property)来描述的,这些属性包括:空间属性、时态属性及其他非空间时态属性。OGC 先后推出了3个版本的GML,GML 1.0 版本于2000年4月正式推出,GML 2.0 版本于2001年2月推出,GML 2.12 版本于2002年9月推出,2003 年1月推出GML 3.0 版本。3.0版增加了对复杂的几何实体、拓扑、空间参照系统、元数据、时间特

39、征和动态要素等的支持,使其更加适合描述现实世界问题。GML作为一个空间数据编码规范,它并没有强制采用它的用户使用规定的XML标识,而是提供了一套基本的标签、公共的数据模型,以及用户构建应用模式(GML Application Schemas)的机制7。2.2.2.2 WMS协议WMS从动态的地理信息中位置数据,产生空间参考数据的地图。地图的格式可以为PNG/GIF/JPEG/SVG/WebCGM中的任意一种。这个规范定义了三个操作:GetCapabilities操作返回XML格式的服务级元数据,它是对服务信息内容和可接受请求参数的一种描述;GetMap用来从地图服务器得到一副具有特定的地理位置

40、坐标范围的地图图像,在构造请求时需要设置图层名称、坐标范围、返回图像的高宽和格式等;GetFeatureInfo是WMS可选的服务,用来提供进一步查询地图上的某些特殊要素的信息的接口8。2.2.2.3 WFS协议WFS向用户提供使用GML编码的地理空间要素数据,并支持在HTTP协议的分布式计算机平台上对地理要素进行查询、插入、更新和删除操作等。这个规范定义了五个操作:GetCapabilities返回WFS性能描述文档(用XML描述);DescribeFeatureType向用户提供一个列表,表示WFS服务器能提供的服务的要素类型。列表还定义了请求具体要素实例时的请求格式以及输出时生成要素实例

41、的方法。;GetFeature为一个获取要素实例的请求提供服务;Transaction为事务请求提供服务;LockFeature处理在一个事务期间对一个或多个要素类型实例上锁的请求9。在具体的GIS应用当中,WFS经常用来实现对地图上数据的查询与修改,并经常与系统的领域层中的模型进行交互。2.2.2.4 WCS协议WCS协议是面向空间影像数据的,它将包含地理位置值的地理空间数据作为“覆盖(coverage)”在网上相互交换。WCS规范由三种操作组成:GetCapabilities,GetCoverage和DescribeCoverageType。GetCapabilities操作返回描述服务和

42、数据集的XML文档。WCS中的GetCoverage操作是在GetCapabilities确定什么样的查询可以执行、什么样的数据能够获取之后执行的,它使用通用的覆盖格式返回地理位置的值或属性。客户端能够指定获取哪些覆盖,以及对空间和非空间的查询进行约束。DescribeCoverageType操作允许客户端请求由具体的WCS服务器提供的任一覆盖层的完全描述10。在MapBuilder库文件中,利用WCS进行地理空间数据数据交换。2.2.3 WebGIS的开源平台2.2.3.1 GeoServer 地图服务器GeoServer是全面遵循OGC开放标准的J2EE实现,可以方便地发布地图数据,并且允

43、许用户对特征数据进行更新、删除、插入等操作,通过GeoServer能够比较容易地在用户之间迅速共享空间地理信息。GeoServer支持PostGIS、oracle,mysql等数据库数据源以及shapefile,mapinfo等格式的文件数据源;能够运行在任何基于J2EE/Servlet容器上;能够通过WMS将数据采用maps/images方式发布,也可以通过WFS协议直接发布实际数据。GeoServer集成了GeoTools工具。GeoTools 是一款基于 Java 的开源 GIS 工具集,允许用户对地理数据进行基本操作。通过 GeoTools 的各种接口和 helper 类,可以写入新的

44、数据格式,通过 GeoTools 为 GeoServer 提供的插件,在不进行重新编译的情况下,可以让 GeoServer 支持更多的数据格式,甚至只需要通过 GUI 的 option 设置即可。2.2.3.2 PostGIS数据库管理系统PostGIS是由Refractions Research Inc开发的,它是对象关系型数据库系统PostgreSQL的一个扩展,允许数据库存储处理GIS对象。PostGIS提供了基于WKT和WKB格式的EWKT和EWKB格式,存储与访问Geometry对象的功能;同时,也提供了丰富的维护、检索和空间运算函数,确保能对矢量格式的空间数据及其属性数据进行有效地

45、组织、索引,并能根据用户需求进行自定义函数的扩充。PostGIS旨在支持开发PostGIS以支持重要的GIS功能,包括对OpenGIS的完整支持,高级拓扑的构建,用于显示和编辑GIS数据的左面用户界面工具和基于网络的访问工具。与单纯使用PostgreSQL相比,开发人员应用PostGIS更易于实现空间几何对象,PostGIS主要优点有:(1) 在3D扩展下支持OpenGIS的WKT空间数据对象,支持3DZ、3DM、4D坐标表示。(2) 支持SQL及空间查询处理空间数据对象。(3) 提供大量空间算子进行空间操作,并提供了支持多种标准投影类型的开源投影库(Proj4)。PostGIS支持的GIS对

46、象是OGC定义的“简单要素”的超集11。2.2.3.3 MapBuilderMapBuilder是一个基于Ajax(Asynchronous JavaScript and XML)技术的地图处理显示的Web开源客户端。它支持Internet Explorer6+、Mozilla1.3+、Netscape6+等浏览器。支持WMS和WFS-T服务。它根据WMS协议实现了地图显示、缩放、移动等操作,并且能够利用WFS-T协议修改服务器上的地图数据。通过简单的配置,MapBuilder中的组件能够轻松的嵌入到网页文件中。在具体实现上采用MVC模式,MVC是Model View Controller(模

47、型,视图,控制器)的缩写。这个模式的目的是为了简化应用程式的实现。此模式包括三个独立组件。Model 表示数据,用户 期待看到的数据。View 负责展示模型。视图在文本编辑器中可能按照适当格式显示一段文本,在多数情况下,试图在Web应用中生成HTML,以便客户端浏览器解释浏览。Controller 是一段逻辑,负责处理请求和按照客户请求行动,创建适当的模型,并将其传递到视图以供显示。在MapBuilder中分别对应于模式(Model)、饰件(Widget)、工具(Tool)三种类型的JavaScript对象,实现了数据管理、信息表达和交互操作的模块化。MVC模式中的一个重要问题是数据的组织管理

48、,对于MapBuilder而言就是数据模型。MapBuilder不提供通常的点、线、面等几何对象的封装,整个数据流完全通过XML配置与解析进行管理,其优点是标准化程度高、客户端使用便捷、无需编码。这些数据流包括系统配置、地图配置以及服务器端交互所产生的各种GML数据。其中系统配置文件按照资源描述框架(Resource Description Framework, RDF)语法以Object-Property-Value格式定义所需对象,每个对象被赋予一个唯一标识的ID,通过ID在全局域中可直接以config.objects.id来应用指定的对象实例。地图配置文件则按照OGC的WMC(Web M

49、ap Context)规范定义地图所需各参数,所有配置文件都将在页面加载时被自动解析,映射成为所定义的对象实例。系统配置自身被映射为模型对象Config,所有模型对象都派生自抽象类ModelBase,统一调用GET方法获取数据信息,并以SET方法设置、修改模型信息和状态。GML数据仅作为中间交换数据存在,通常需要进行XPath或XSLT转换处理。MVC模式的另一个重要问题就是消息的传递和相应。MapBuilder中由两种消息类型:一种是浏览器定义的各类系统消息,如鼠标按下事件等;另一种是自定义消息,如加载模型事件loadModel等。系统消息由派生自ToolBase类的工具对象处理,如响应鼠标

50、点击事件。这些工具对象常作为饰件对象的一个属性配置在系统文件。事件对象则通过DIV等标记与网页建立关联来展现模型信息,一般派生自WidgetBase类。WidgetBase类与ModelBase类拥有共同的父类Listener,因此饰件对象注册给一个模型对象即可通过调用事件监听器互通自定义信息。模型的修改会影响饰件状态,饰件同样可以将系统事件的影响传递给模型处理12。2.3 Ajax 架构Ajax是一种创建交互网页的技术,由Adaptive Path的咨询顾问Jesse James Garrett首先提出。它不是单一的技术,而是JavaScript、CSS、DOM、XMLHttpRequest

51、对象的集合。其中JavaScript是通用的脚本语言,Web浏览器中嵌入的JavaScript解释器允许通过程序与浏览器的很多内建功能进行交互。CSS(层叠样式表)为Web页面元素提供了一个可重用的可视化样式的定义方法。它提供了简单而强大的方法,以一致的方式定义和使用可视化式样。DOM(文档对象模型)以一组可以使用JavaScript操作的可编程对象展示出Web页面的结构。XMLHttpRequest对象允许Web程序从Web服务器以后台活动的方式获取数据。在Ajax的使用当中,JavaScript定义了业务规则和程序流程。应用程序使用XMLHttpRequest对象以后台方式从服务器获得数据

52、。DOM对象根据服务器得到的数据修改客户端Web页面中的元素值。CSS利用规定好的样式将DOM对象显示到浏览器中13。2.4 Spring 架构Spring是一个开源的架构,由Rod Johnson开发并在他的著作Expert One-on-One: J2EE Design and Development中进行描述。它用来简化企业应用程序的开发,使得程序仅仅利用JavaBean就能够完成以前只能由EJB来完成的工作。任何的Java应用程序都能从Spring框架的简单、可测试性和松耦合中得到好处,而不仅仅限定为服务器端的程序。在J2EE中,EJB的原意是为了解决诸如分布式对象和远程事务等问题而设

53、计的复杂的组件。对于复杂度不高的企业项目,在开发时也必须要承担EJB的众多的Java源文件、繁杂的部署描述以及重型容器等不便。即使要解决的问题很简单,EJB的使用也会使得企业系统的复杂度大大增加。所以使用Spring来替代EJB,它使得系统的复杂度依赖于要解决的问题,减少了容器对设计的侵蚀。在简化开发的同时,它尽量提供了和EJB相同的功能。Spring的信条是:J2EE 应当是易于使用的。简单来说,Spring是一个轻型的、控制反转的并且支持面向方面的容器框架14。轻量级的容器意味着对程序代码做最少的改动,就可以获得Spring核心带来的好处。Spring框架的核心基于依赖注入(Depende

54、ncy Injection, DI)技术。在Spring中,所有类资源都被应用为Bean,只需要遵循JavaBean的命名规则,DI机制就可以类属性配置操作与代码相分离。对于基于接口编程的程序,通过采用DI,为基于接口的设计而编写的辅助代码大大减少,接近于零。Spring框架中DI带来的好处主要有:(1) 减少“粘合”代码。DI可以消除为了连接应用程序的各个部分而编写的大量代码。(2) 依赖的外置化。Spring中DI的通过外置的配置文件来实现,所以可以将依赖外置化。要改变依赖只需要修改配置文件而不需要修改代码。(3) 在统一的地方管理依赖。采用传统方式管理依赖时,依赖关系会在代码中散布开,改

55、变它们通常会带来问题。当时用DI的时候,所有关于依赖的信息都通过一个简单的库进行管理,使得管理依赖变得既简单又不容易出错。(4) 提高可测试性。当面向DI设计类时,类之间的依赖可以方便的进行改变。这一点在系统进行测试时特别方便15。 除了DI之外,Spring框架还提供:面向方面(AOP)编程机制、对数据访问的优化、事务管理、Web层的MVC架构、简化整合J2EE功能、远程访问(Demoting)支持、Mail支持、计划任务支持以及源代码级的Metadata(元数据)等功能。2.5 本章小结本章首先对GIS技术进行了介绍,包括GIS技术的基本功能、应用范围、以及将来的发展趋势等。然后介绍了We

56、bGIS,说明了WebGIS的概念和优点;介绍了OGC组织以及它所提出来的GML、WMS、WFS、WCS等WebGIS所用到的OpenGIS协议,分析了每个协议的作用和相互的关系;同时介绍了支持WebGIS开发的开源平台,包括WebGIS服务器软件GeoServer、支持GIS操作的数据库PostGIS以及实现了WMS/WFS协议采用MVC模式架构的MapBuilder地图操作组件。最后对用于Web2.0开发的Ajax架构,以及用于简化J2EE开发的Spring做了介绍。由本章的分析可知,J2EE平台下的WebGIS开发的协议已经渐渐规范,有利于GIS系统的开发和不同系统的相互访问;支持软件也

57、日渐增多,功能越发强大。其中Spring框架的出现更使得J2EE服务器编程变得愈发简单化和自动化。第3章 需求分析需求分析是软件开发流程中重要的一个环节,需求分析的基本任务是根据用户的需求,准确定义要完成的系统的目标,回答系统必须“做什么”的问题。它的主要用途是明确系统需求,是用户和开发人员之间进行讨论的基础,并作为系统设计、实现以及测试的依据。只有准确全面的需求获取与分析才能保证系统设计、系统实现的顺利进行,为后期测试提供必要的支持。在参考了现有的GIS物流监控系统的功能,并且考虑到了系统的扩展性和成本的基础上,最后制定了本系统的具体需求。3.1 系统实现目标物流企业中,首先要对货物从发货人

58、发送货物到收货人提取货物的整个过程进行管理和记录,要求能够随时了解货物的位置、状态等属性。同时管理人员通过系统能够获取企业里运输车辆的位置、速度、方向、所载货物等参数,并能够发送命令给车辆,实时监控和管理整个货物运输流程。为保证物流系统能够有效地为物流企业管理人员服务,从功能上必须达到以下目标:(1) 必须实现物流企业中业务流程的所有必需功能。作为物流企业的管理软件,系统必需能够实现诸如发送货物、运输货物、装载货物、卸载货物、车辆线路编辑等功能。保证系统实现的功能的有效性。(2) 必须保证管理人员得到信息的及时性和真实性。管理人员作为整个系统的调度者,系统的信息必须及时地显示给管理人员。对于重

59、要的信息,系统应该使用弹出警告窗口、修改显示信息的字体颜色等手段引起管理人员的注意,保证系统调度的及时性。(3) 必须保证管理人员和运输车辆之间进行有效地、及时地通信。对于物流系统来说,系统的实时调度和管理是十分重要的,其中对车辆的调度尤其重要。所以,要保证管理人员和运输车辆之间通信的及时性,提高系统调度的效率。3.2 系统运行环境为了充分使用物流企业的现有软硬件资源,在保障物流信息系统稳定、高效运行的前提下,达到降低成本的目的。根据系统需求,设定了物流信息系统的运行环境。网络环境:服务器和操作主机都需要采用Internet,车辆终端通过GPRS-Internet网关最终连接到Internet

60、。硬件环境:(1) 服务器主机配置:CPU使用Intel P 4 Xeon, 双CPU,内存为2GB,选用2块120GB的SCSI硬盘进行同时读写。(2) 客户端机器配置:CPU最低Intel PIII 800MHz以上,内存128MB以上。(3) 车辆终端配置:每个车辆配置GPS数据收发器一个,用来获取GPS数据,通过GPRS网络和服务器进行通信。(4) 其他配置:GPRS-Internet数据转换网关若干,用来将GPRS网络中车辆数据转换为Internet网络中的数据。软件环境:服务器: Windows 2000 服务器版操作系统,Tomcat5.5服务器,GeoServer1.5.0地图

61、服务器,PostGIS1.2.1数据库。客户端:Windows2000操作系统以上,IE6.0以上、Mozilla1.3以上或者Netscape6以上。3.3 系统的开发环境考虑到系统成本问题,全部采用开源软件和框架来构建此系统。相对来说,开源软件成本低,功能相对简单。服务器端软件环境:Web服务器采用Tomcat5.5,它部署和使用起来都很方便,支持的功能对本系统来说已经足够。地图服务器采用GeoServer1.5.0,它是一个全面支持OGC开放性协议的开源地图服务器,能够分别以图片和实际数据的方式发布地图数据。数据库服务器采用PostGIS1.2.1,它是对PostgreSQL8.2的补充

62、,有丰富的数据类型和处理地理数据的函数,而且GeoServer与PostGIS之间的操作经过一定的优化。客户端环境搭建:地图显示采用MapBuilder地图操作组件,它是由Javascript语言实现的一个库文件,可以方便的嵌入到网页中去。系统信息实时显示与实时更新的实现,需要采用Ajax技术的支持。开发工具与支持环境:系统开发采用Eclipse。考虑到系统的扩展性和实体类的独立性,采用Spring作为J2EE实现的服务器端容器,数据库访问则采用Ibatis组件实现。这些开源软件的采用,降低了系统开发难度,提高了软件的可复用性。3.4 功能性需求描述在面向对象的系统分析中,获取功能需求的最常用

63、的技术就是用例建模技术。它能够直观地向客户展示系统的功能,方便技术人员准确地获取需求。在项目开发的前期,它帮助开发人员理解系统的需求而不考虑具体的实现方法。用例,表示系统的一种行为或者某个功能。它是在特定条件下,为了达到某种目的,系统和用户之间进行交互的一个序列。用例模型由参与者和用例组成。参与者是与系统进行交互的外部实体,可能是某个人或者是某个事物16。图3.1显示的就是本系统的用例图。本系统中,参与者有五个,管理人员、发货人、收货人、车辆和定时器。对于用例分析来说,只有用例图和用例描述相结合才能表示系统的需求,相关的用例描述如下。图 3.1 物流信息系统用例图3.4.1 发送货物用例标识:1.0参与者: 发货人简要说明:发货人在系统要求下提供发送货物所需的信息,实现发货操作。基本事件流:(1) 发货人提供货物基本信息,包括货物类别、大小、目的地、发货人信息、收货人信息等。(2) 经相关人员检验货物状态,货物可以运输。(3) 系统记录发货人和收货人信息,分配货物编号,计算货物运输费用,配置货物运输路经,将相关记录存储到系统中。(4) 打印发货回执给发货人。3.4.2 查询货物状态用例标识:2.0参与者:管理人员,发货人简要说明:此用例中操作者可能为管理人员或者发货人。操作者向系统提供货物编号,系统以列表的方式显示货物的当前状态以及其他基本信息。基本事件流:(1) 操作者提供货

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!