1.背景
最近已有的一个项目中需将非GIS版本的区域预警换成GIS版本,一是因为客户对已有地图(也就是amcharts之类的示意地图)功能的不满意,二是已有地图无法对业务数据进行分析和定位,考虑到后期会可能会对业务数据的空间定位和展示以及空间分析等有所需求,综合以上两点领导还是决定替换现有地图,且领导明确表示用开源的WebGIS(考虑到成本)。
2.业务梳理
梳理了一下要求,基本是一下几点:
1、WebGIS,能够方便的集成到现有的系统中;(js、flex二选一)
2、有自己的地图服务,而且也是开源的,地图配色要和之前的气象项目一样;(geoserver、mapserver二选一)
3、可以生成区域预警图(不同数量不同颜色,由浅到深);(矢量图层渲染)
4、能够根据时间条件进行查询;(这个简单,不作为选型条件)
5、点击行政区划,显示详情列表;(要素的点选功能)
3.开源webgis解决方案
3.1 主流组合
综合上面要求,目前两种主流开源主要组合:
1、基于C、C++系列的:Mapserver(服务器)+QGIS(桌面软件)+PostGIS(数据库)+Openlayers(JS)/ openscale (FLex)(浏览器客户端)
2、基于JavaEE系列的:Geoserver(服务器)+uDig(桌面软件)+PostGIS(数据库)++Openlayers(JS)/ openscale (FLex)(浏览器客户端)
3.2 对比
功能上:MapServer弱于GeoServer,QGIS要强于UDIG
效率上:Mapserver对WMS(Web Map service)的支持更为高效,而Geoserver则更擅长于结合WFS(Web Feature service)规范的属性查询
详细见:http://vincentchun.iteye.com/blog/377411
3.3 MapServer特点
3.4 GeoServer特点
具有以下优点: 1) 用 java 语言编写、标准的 J2EE 框架、基于 ser vlet 和 STRUTS 框架、 支持高效的 Spring 框架开发; 2) 兼容 WMS 和 WFS 特性、支持 WFS-T 规范; 3) 高效的数据库支持 PostGIS、ShapeFile、ArcSDE,Oracle、MySQL 等; 4) 支持上百种投影; 5) 能够将网络地图输出为 jpeg、gif、png 等格式;
3.5 网上的各种讨论
4.总结
5.阅读过的文章