先说点题外话,ArcGIS9.3发布了,较9.2版本革新并不是很多,更多的是增强原有功能,Server开发提供JavaScript API 和 Flex API,这两种开发方式都是基于REST,REST在9.2版本以前是没有的,这是9.3发布地图服务自带的特性,我想这也是和GoogleMap、51地图API看齐,使WebGIS开发方式更加主流化了,完全使用JavaScript就可以实现WebGIS的功能开发。
然而ArcGIS昂贵的软件版本费用,对于中小企业地理信息系统的推广是一个瓶颈。一套企业级系统的推广平台费怎么也得10几二十万,还不包括开发费用。国外开源GIS平台日趋成熟,相信对于小型企业用户来说开源GIS平台足以胜任,正式这样想法的驱使,一个月前我开始着手开源GIS的研发,同时结合以前做过项目,目前已经完成了整体系统的搭建、部分功能的探路。
开发语言:Java 5.0
开发IDE:MyEclipse 7.0M
系统框架:SpringMVC + Hibernate
GIS平台:OpenLayer + GeoServer + PostgreSQL(PostGIS)
OpenLayer 是一个非常棒的客户端地图浏览组件,提供了较完整的对象模型,由于是开源的很方便扩展功能,我就扩展了图层的TOC功能。
GeoServer 开源的地图发布软件,GeoServer作用好比IMS或着ArcGISServer,负责连接地理数据、定义显示样式、发布WMS、WFS等标准的OGC服务,缩主在Tomcat等Web应用服务器中。
PostgreSQL 开源数据库,支持空间数据格式,功能强大,应用广泛,本系统的数据存储在此数据库中。就是觉得备份功能有所欠缺。
Hibernate 附加空间引擎组件,实现了对空间数据库的ORM操作,支持对空间数据库的查询和修改。
系统抓图:
下图:系统主界面
下图:GIS系统多级菜单,有数据库配置后生成,并支持权限控制
下图:Hibernate空间查询出的结果,通过jmesa表现
系统目前完成了整体框架搭建和基础地图功能部分,像地图查询、定位等功能,技术难点已经功课,下一步是细化开发。
寻求项目推广合作。