GeoSever PostGIS的web服务发布初探

 2021-12-06 05:12

论文总字数:59982字

摘 要

目前Geoprocessing服务发布的主要形式是在ArcGIS中发布所建立的空间模型,主要缺点是软件配置繁琐,成本高昂。在网络不断进步的当今时代,把源代码开放给公众的软件有两大优势,一是自身免费,二是功能强大,更新频繁。因而在开发者的圈子里越来越受欢迎,而这也会在不远的将来成为主流趋势。这种趋势在 GIS 领域表现尤为显著, 在 OpenGIS(Open Geodata Interoperation Specification)规范的指引下,各种开源 GIS 软件纷纷涌现,基于开源软件进行web服务发布是一种非常适合于小成本开发的方式。由于数据库天然具有网络服务的特性,因此本课题主要探讨利用GeoServer和PostGIS进行地理服务发布的方式。

本文主要探讨以Geosever PostGIS Openlayers的环境内,地理服务的WEB发布,其中PostGIS 作为一个功能强大的数据库对于整个系统环境提供了强有力的数据库支持。而GeoServer 是 OpenGIS Web 服务器规范的 J2EE 实现,由于新版本的GeoServer支持自带有JETTY的http服务器,利用Geoserver可以实现地图数据的发布,而且使用者可以对于属性数据进行删除,更新,和修改插入,并且Geoserver本身就可以实现轻松的在用户之间快速的共享地理空间的信息。最后OpenLayers作为强有力的一个JS的类库,提供了丰富的API和各种功能,对于整个项目实施起到了锦上添花的作用。有了以上开源软件的支持,以及HTML(CSS)的利用,就可以实现FOSS(free open source software)的webgis客户端功能的实现。

本文对于开源WebGIS的探讨的意义在于:

  1. 由于网络在当今时代已经成为人们不可或缺的生活一部分,因而通过网络浏览器等终端媒介不仅能够让人们迅速获得自己想要的数据,而且可以使得开发者或者数据的管理者来对数据进行实时的维护与更新。
  2. 能够有效的降低开发成本
  3. 由于WebGIS具有共享性,因而使用WebGIS来发布数据能够解决资源浪费的情况。
  4. 由于软件开源,更多的开发者加入进来,会对程序代码有更加深入的研究与探讨,这就能针对最根本问题快速解决,避免了走弯路的情况发生。

关键词:FOSS,Geoserver,PostGIS,Openlayers,开源,地理服务发布,HTML,CSS

preliminary study on the publishment of Open source Webgis based on geoserver postgis

Abstract

The article is mainly about the realization of the FOSS WebGIS service publishment based on PostGIS,Geoserver and Openlayers,and also the discussion focused on the details of how the whole prosesss is made possible with the help of FOSS.

PostGIS,as a powerful database,offers strong support on SQL query and DATA management.Geoserver plays an important role as a container as well as a HTTP server(with “jetty” http server embedded) that offers miliions of services and request function on geometry data,which makes it possible for the programmer to publish WebGIS data and services to the end-user,who can make custom query and processing on data.Last but not least,Openlayers is an open source JavaScrit library which,with its APIs ,opens the door to millions of possibilities for end-users to interact with the published services.

KEYWORDS: FOSS, ,Geoserver, PostGIS, Openlayers, WebGIS,HTML,

Main point of the discution conducted by this arcticle:

  1. Internet has become a essential part of people’s life,The web browser have become the ultimate tool that give people the information and data they neeed.also,it allows developers to maintain the data on regular bases.
  2. OpenSource development reduces the cost of development.
  3. Because of the sharing abilities provided by WebGIS,it can address the problem of wasting resources
  4. Thanks to the open source policy,more developers can get involved,thus creating more opportunities for further disscution and research,which means a much more direct way right into the vary problem.

目录

Geoserver PostGIS的web服务发布初探 I

摘 要 I

Abstract II

第1章 绪论 6

1.1 WebGIS的出现 6

1.2 WebGIS的特点与优势 6

1.3 开源Webgis的背景与意义 6

1.3.1 开源软件的必要性 7

1.3.2 开源Webgis的优缺点 7

1.3.3 WebGIS有关的规范 8

第2章 技术路线选择 10

2.1 WebGIS整体体系与结构 10

2.2 WebGIS的实现模式 10

2.2.1 现有B/S模式 10

2.3 现有开源WebGIS软件介绍 12

2.3.1 PostGIS(PostgreSQL) 12

2.3.2 Geoserver 13

2.3.3 Openlayers 14

2.4 软件比较选择 15

2.4.1 开源与商业 15

第3章 Geoserver平台架构 16

3.1 总体技术路线设计 16

3.1.1 整体架构 16

3.2 准备工作(Windows 8.1 64bit with update1环境) 16

3.2.1 部署Geoserver 16

3.2.2 Openlayers的部署 20

第4章 空间数据库建设 21

4.1 开源空间数据库 21

4.1.1 开源数据库简介 21

4.2 数据库建立 21

4.2.1 数据库设计内容 21

4.2.2 数据导入数据库 22

4.2.3 配置并使用Pgadmin和uDig 23

第5章 数据库的发布 25

5.1 Geoserver及其提供的服务 25

5.1.1 WMS与WFS 25

5.2 发布数据 26

5.2.1 往服务器连接数据(Geoserver) 26

5.2.2 查看数据 27

5.2.3 SLD的编写与导入 28

第6章 前端设计与实现 30

6.1 功能实现 30

6.1.1 完成思路 30

6.1.2 总体功能界面设计 31

6.1.3 加入Google Maps 底图 35

6.1.4 载入数据图层(wms)并加入CONTROL控件 37

6.1.5 具体查询功能实现方法 38

6.2 最终实现结果展示 42

6.2.1 实现功能示意图 42

6.3 遇见问题及相关思考 46

6.3.1 基于SQL view的输入坐标形式参数 46

6.3.2 鼠标点击获取属性信息的坐标转换 47

第7章 结论与展望 49

7.1 结论 49

7.1.1 收获与感想 49

7.2 相关不足 49

7.2.1 缺乏整体协调性 49

7.2.2 功能完整性 49

7.3 努力方向 50

7.3.1 继续完善功能 50

7.3.2 继续改善界面 50

参考文献 50

致谢 51

附录 52

SLD源代码 52

Counties 人口属性图SLD代码: 52

States 人口属性图SLD代码: 59

绪论

WebGIS的出现

回望历史,计算技术的发展动力,自始至终只有一个主题从未改变,那就是往更强的性能,更加廉价的成本,以及更加友好的用户交互界面,同样的GIS 的发展也是经历了从单机到网络环境的两个主要发展阶段,最后向着网络计算相结合的方式发展。

20世纪80年代中叶,网络GIS成为了GIS的一个重要的发展方向,基于网络出现的WebGIS是一个典型的依赖于网络而生的地理空间计算机系统,这个系统使得远程的计算以及返回结果成为可能。

WebGIS的特点与优势

WebGIS从出现开始,就让GIS普及以及共享空间数据不再遥不可及,并且,WebGIS相比较于传统的GIS有着绝对的优势:

  1. 利用网络的先天优势,能够实现大范围内的数据的传递。
  2. WebGIS的前端主要实现方式为浏览器等,相比较传统的GIS的窗口模式具有优势。
  3. 性能提高,由于WebGIS主要实现方式为分布式处理,有着得天独厚的网络优势,并且通过分布式服务器来进行高强度的计算任务,并且能够灵活的变换计算主体,因而是一种理想的模式

开源Webgis的背景与意义

目前国外主流的厂商如ESRI等自己的商业WebGIS平台有ARCIMS以及ArcGISServer,国内有超图和SuperMapIS等软件平台,这些商业软件平台提供给客户的地图一般是由服务器来负责生成,然后把用户请求的地图在客户端呈现出来,具体格式有矢量或者图片格式7.3.2[3]。因此需要在服务器这边实现短时间高强度的计算工作,这对于服务器的要求是相当高的;另外一种WebGIS的开发的方式就是从头做起,在最底层独立进行开发,这种底层开发的方式经常会采用最新的技术,最新的规范,比如AJAX或者WebService技术,并且支持OGC标准。例如谷歌地图的这种形式,总体来讲,这种方式的可扩展性强,灵活性也强,可以以模块化实现针对用户的定制。

如果把这两种开发的形式放在一起来比较看,商业平台的WebGIS的优势在于开发非常方便和简单,使得在GIS应用功能之上所花费的时间大大减少,开发者可以将更多的精力放在别处。缺点是这些平台价格非常高,结构复杂因而维护的要求就同样也非常高。而另一方面,从底层开发的WebGIS,例如谷歌地图等,实现的周期很长,并且风险也是非常之大。总而言之,两种开发方式对于非大型企业来说都是代价过高,实现起来比较困难。因而,这个时候开源WebGIS开发平台因具有较低的成本,灵活性很高,并且能实现轻松的扩展,因而在这里,本文也考虑使用采用开源WebGIS的方式,对这种低成本的地理服务发布方式进行初步探究。

开源软件的必要性

‑1 WebGIS结构示意图

目前Geoprocessing服务发布的主要形式是在ArcGIS中发布所建立的空间模型,主要缺点是软件配置繁琐,成本高昂。在网络发达的现代,开源软件的优势逐渐体现出来,其开放代码的特性,免费的方式,强大的功能都在吸引这越来越多的开发者投入其中,而这种趋势大有愈演愈烈之势。这种趋势在 GIS 领域表现尤为显著, 在 OpenGIS(Open Geodata Interoperation Specification)规范的指引下,各种开源 GIS 软件纷纷涌现,基于开源软件进行web服务发布是一种非常适合于成本开发的方式。由于数据库天具有天然网络服务的特性,因此利用Postgis Geoserver OpenLayers实现小成本开发非常可行。

开源Webgis的优缺点

开源软件一大特征即开放源代码,而开源的方式则遵从着一定的开源的协议,比如GPL(GeneralPublicLicense)和LGPL(GNULesserGeneralPublicLicense)。当前比较成熟的开源WebGIS平台有:GeoServer,Ge-oTools,GRASS等7.3.2[3]。

开源WebGIS平台非常灵活,一般使用行业最新的标准,具有以下特点:

1)开源平台一般对于多种格式能提供较好的支持,通过其丰富的API可以实现各种GIS数据的访问,同时由于开放源代码,所以其API具有相当大的扩展潜力。这个特点成功的实现了比较可行的地理信息共享的解决技术方案

2)传统的WebGIS技术往往对于服务器和网络的质量有较高的要求,具体原因在于:这些平台普遍依靠服务器端动态生成地图数据,然后再把地图发送到客户端。因而这些服务器经常处在高强度的工作状态之中。同时在用户这边也造成了长时间的等待。而开源WebGIS则因其大量采用AJAX技术,解决了图形信息的传输速度和可视化的问题,这样就让用户从之前的请求到相应的长时间等待循环之中解放了出来。具体实现原理如下:其核心叫做XmlHttpRequest,是一个JavaScript对象,这个对象能支持异步请求,这样就能实现在向服务器端发送请求并处理响应时,不会影响到客户端。引入AJAX到WebGIS当中,并且将地图的切片以金字塔的形式存储在了服务器端,这样就能实现根据用户的操作,进行动态的调度,只调入缺少的地图的部分,而那些已经存在与客户端的地图数据则不需要重复的进行调用,这种方式的缺点在于不够灵活,因为要求地图事先存放在服务器上面。

剩余内容已隐藏,请支付后下载全文,论文总字数:59982字

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;