Code Bye

Java开源GIS解决方案 uDig+geotools+geoserver+postgresSql

    因为准备用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相比,那个更合适一些。

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

#1

40分

bs的不行嘛,一定要cs吗?我觉得用openlayers+geoserver你的需求都能满足勒。uDig挺不错的,不过在他基础上二次开发就不太清楚了。cs模式用Arcgis engine挺简单的。不需要整开源的这些。个人意见
#2
恩,只考虑c/s,因为之前有个java客户端,基于swing开发的,原先的地图是直接用的图片来临时代替,现在是要给该客户端加上真正Gis功能。
对,是在uDig上进行二次开发,将需要的功能整合到现在已有的客户端中。
因为现在还是调查,先从开源软件入手。付费的也会考虑,主要是现在还不知道如何下手开发。
#3
好吧,为什么回复的这么少。 这几天看了看uDig,发觉确实相当不错,它的地图数据可以来源于1)本地文件;2)地图server;3)数据库。再看看它的二次开发,在与其他已有系统整合方面是否足够灵活和简单。
#4
最近我在写关于udig二次开发的一些案例和博客 可以关注一下 如果你想基于开源GIS做一些东西 也可以一起聊聊

http://jjxliu306.iteye.com/

#5
你好,最近我也准备做这么一个类似的项目,需求基本跟你的一样,目前还在调研阶段,希望能和你多交流交流。
#6
用C#简单,参考:http://www.cnblogs.com/luxiaoxun/p/4454880.html

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明Java开源GIS解决方案 uDig+geotools+geoserver+postgresSql