开源WebGIS实施方案

http://www.cnblogs.com/hans_gis/archive/2012/09/21/2696880.html

GIS起源于上世纪六十年代,发展到现如今,也早已不再是某些专业领域的“阳春白雪”。放眼当下,各商业GIS软件有如群雄逐鹿,大有风起云涌之势;而开源GIS软件也有如群星璀璨,在各类型GIS产品中竞相争艳。本系列以介绍各相关开源GIS软件为目的,藉以实现一套行之有效的WebGIS实施方案。

以我个人粗浅的认识来看,一套切实可行的WebGIS需具备以下三个部分:

① 地图数据,地图数据既是GIS运行的基础也是GIS中永远的主角;

② Web服务器&GIS服务器,Web服务器主要提供Web信息浏览服务,GIS服务器则用于提供WMS、WFS和WCS等Web服务;

③ 客户端展现,这个当然是面向最终用户的了。

地图数据生产,可以采用uDig、QGIS、OpenJUMP等开源桌面GIS。

地图数据存储,有两种可选方法。一是文件存储,直接以Shapefile文件形式存储;二是利用空间数据库。在开源空间数据库中,比较成型的有PostGIS和MySQL Spatial。其中PostGIS是开源数据库PostgreSQL的扩展模块,而MySQL Spatial是开源数据库MySQL的扩展模块。相比较而言,在开源GIS领域,PostGIS能够得到更为广泛的支持。

Web服务器,Tomcat乃不二之选。

GIS服务器,GeoServer或者MapServer。二者都是开源WebGIS中的佼佼者,在功能与性能上各有千秋。GeoServer 是 OpenGIS Web 服务器规范的 J2EE 实现的社区开源项目,MapServer则是基于C实现的。

GIS内核 Geotools 是一套基于Java平台的开源GISAPI中间件,实现了完整的GIS底层功能。

客户端呈现,现在的主流方式都是请求地图瓦片然后在客户端进行展示,因此理论上客户端只需要能够请求并获取相应的地图瓦片即可。但是仍然可以采用一些开源库的来简化、强化、优化前端开发。比较著名的有Openlayers、OpenScales,其中OpenLayers 是一个专为Web GIS 客户端开发提供的JavaScript 类库包,用于实现标准格式发布的地图数据访问,OpenScales算是OpenLayers的ActionScript翻版,对于Flex前端开发来说是个不错的选择。另外还有ExtMap、Mapbuilder等。

以上已经给出了用开源软件实现WebGIS的各个环节可采用的软件,但在实际中,还需要根据项目实际做一下筛选。如果是JAVA技术路线,选择uDig + PostgreSQL/PostGIS + Tomcat + GeoServer + Openlayers组合。

开源WebGIS实施方案相关推荐

  1. 开源WebGIS实施方案(一):开篇 [转]

    开源WebGIS实施方案(一):开篇 GIS 起源于上世纪六十年代,发展到现如今,也早已不再是某些专业领域的"阳春白雪".放眼当下,各商业GIS软件有如群雄逐鹿,大有风起云涌之势: ...

  2. 开源WEBGIS(五)WEBGIS五剑客之GIS服务

    地图服务器通常也称作地图引擎,它是WebGIS架构的核心,所有的地图操作都是通过地图服务器完成的.现在的主流开源地图服务器主要是MapServer和GeoServer.GIS 应用服务器,主要用来接收 ...

  3. c++获取可用端口号_PG高可用架构实施方案

    1.PG概述 PostgreSQL是一个功能非常强大的.源代码开放的客户/服务器关系型数据库管理系统(RDBMS).PostgreSQL最初设想于1986年,当时被叫做Berkley Postgres ...

  4. webgis从基础到开发实践_开源WebGIS教程系列——11.1 GISLite 的开发背景与设计

    地理信息门户可以帮助人们更容易地发现.访问和使用地理空间信息, 是地理信息发布.服务和共享的重要环节.许多国家都很重视地理信息门户的 建设,把它作为国家空间数据基础设施(spatial data in ...

  5. 重磅 | 智能工厂整体实施方案(附PPT下载)

    肉眼品世界·导读 在当前智能制造的热潮之下,很多企业都在规划建设智能工厂.众所周知,智能工厂的建设是一个十分复杂的系统工程,为了少走弯路,本文整理了智能工厂建设的整体实施方案,如需获取完整无水印PPT ...

  6. 部署HPC集群的实施方案

    部署HPC集群的实施方案 零.前言 本教程(实际上是一个集群部署的操作流程)旨在通过一个小型的HPC集群部署过程讲述基于Beowulf架构的HPC集群原理.主流工具等相关内容,并不对各个工具的特性及其 ...

  7. Mysql高可用性实施方案

    Mysql高可用性实施方案 陆地 2012-11-30 目录 一.实施测试环境:.... 2 二.系统架构图.... 2 三.Mysql的安装步骤.... 3 四.主从双机热备配置步骤(异步复制功能) ...

  8. 广东省人民政府关于印发广东省深化“互联网+先进制造业”发展工业互联网实施方案及配套政策措施的通知

    2018年3月22日,广东省人民政府印发<广东省支持企业"上云上平台"加快发展工业互联网的若干扶持政策(2018-2020年)>通知. 广东作为制造业大省,大力贯彻实施 ...

  9. 开源WebGIS架构

    开源WebGIS架构 目前国际上著名的地理空间信息生产商大都拥有了成熟的产品线, 基本涵盖了从数据采集.数据编辑.数据管理.空间数据互操作.空间分析到网络地理信息服务注册.发布.聚合等所有地理信息工程 ...

最新文章

  1. navicat对mysql的备份
  2. 23种设计模式(11):责任链模式
  3. CentOS下yum安装rabbitMQ
  4. Java的不同版本:J2SE、J2EE、J2ME的区别
  5. 创建新的option
  6. 计算机病毒小学教师资格证面试,小学信息技术人教版四年级上册第15课《病毒防治及时做》优质课公开课教案教师资格证面试试讲教案...
  7. 网易云音乐喊话酷狗称其“耍猴”:专利文件与“跟听”毫无关系
  8. LeetCode 3sum 问题
  9. mysql lock trx id_MySQL中RR模式下死锁一例
  10. java 编译单个文件_单独Java文件的通用快速编译方法
  11. 如何修改(显示)文本文档后缀名
  12. 微信朋友圈功能测试用例
  13. 【嵌入式C语言系列】关键字详解【const】
  14. app兼容性测试方案
  15. JS实现倒计时精确到天数,时,分,秒或者精确到时、分、秒(小时数累加)
  16. 列表数据导出成Excel
  17. 操作系统中 完成时间,周转时间,带权周转时间和到达时间,服务时间是什么关系,怎么算
  18. 比较 Java 枚举成员:== 或 equals()?
  19. 对称加密算法AES联合设备IMEI码设计的加密机制
  20. Chart.js 插件的使用

热门文章

  1. 电气一次图自适应屏幕,定位精确,无参考代码,只是解决方案,技术科行,已经用于项目
  2. springMVC的文件上传于下载
  3. android studio手机与蓝牙收发数据_QT for Android :蓝牙
  4. linux c++ utf8 gbk,Linux C++ gbk转为utf-8
  5. oracle数据库卡住了无法保存,Oracle数据库使用NFS存储,启动报错提示无法锁定文件...
  6. python没有数据类型_python基本数据类型都在这里了!
  7. 文档大小超出上传限制怎么办_一键PDF转Word、PPT、图片等文档,这才是办公族必备的效率神器!...
  8. 循环匹配对应筛选(2)
  9. perf script 执行时间_在Python中准确地测量代码执行时间
  10. (八)mybatis之映射器