日期:2014-05-18  浏览次数:20584 次

Java开源GIS解决方案
本帖最后由 huahuaspy 于 2013-05-10 17:04:00 编辑
    因为准备用java做一个gis客户端软件,但对gis的开发还不太了解,以前只接触过一点点,这几天在网上调查了一下,准备采用的java开源gis解决方案是: uDig+geotools+geoserver+postgresSql
在这里问问各位牛人,这种解决方案是否合理?
    我的需求是:
    基于Java swing做一个客户端,在主界面中,显示某一地区的地图(例如西安)。用户可以对它放大、缩小;可以测量距离;可以放置标记符号;可以根据经纬度定位。在地图上,可以添加自己的图层,然后在该图层上,显示设备图片(比如一台路由器),用户用鼠标点击该图片,可以显示该设备的详细信息;可以隐藏某些图元或者某个图层;用户可以画图元;可以给指定图片加边框;可以设置切换活动图层。
    因为目前是要基于C/S模式,所以暂时不考虑通过浏览器来显示地图。同时只考虑用java,暂不考虑用C/C++或者其他语言来编写客户端。

    目前对uDig+geotools+geoserver+PostgreSQL/PostGIS这一java开源GIS解决方案的理解是:
uDig来做客户端,它基于Eclipse RCP;Geotools作为GIS中间件,它是比较成熟的开源GIS中间件,有近10年的历史。它采用Java实现,架构非常优秀,容易扩展。Geotools中采用了另一个著名的开源软件Jts(Java拓扑套件)。Jts封装了常用的geo算法;getserver作为服务端,用于给客户端进行调用,并且可以发布地图,供所有客户端共享;PostgreSQL/PostGIS作为数据库,存放空间数据和地图索引。

    但是,对这些还没有足够的了解,不知道上面说的这种解决方案是否可行。网上有些还提到用OpenMap、Jump或者JXMapKit来做客户端的。不知道和uDig相比,那个更合适一些。

    所以在这里请求大家,能否帮小弟一把,提供一些思路,或者一些资料,越详细越好,先谢过了
Java GIS 地图 uDig 开源

------解决方案--------------------
bs的不行嘛,一定要cs吗?我觉得用openlayers+geoserver你的需求都能满足勒。uDig挺不错的,不过在他基础上二次开发就不太清楚了。cs模式用Arcgis engine挺简单的。不需要整开源的这些。个人意见