OpenLayers学习笔记(2)
目录
OpenLayers学习笔记(2)
1. 准备工作
下载postgres和postgis,并安装。postgres的安装比较简单,在windows下面直接运行postgres的windows安装向导程序即可,然后安装postgis。(注意如果数据库需要支持空间数据格式,那么数据库的模板要选择postgis)(因为很久以前在window下面安装的,所以有什么问题也记得不是很清楚了,如果有什么问题请给我留言,如果有时间我把postgres和postgis在windows和linux下面安装的过程整理一下) postgis是开源数据库postgres的空间扩展,关于postgis和postgres的介绍可以到官方网站查看,在这里就不再介绍了。
下载GeoServer,并安装。Geoserver是一个功能齐全,遵循OGC开放标准的开源WFS-T和WMS服务器。利用 Geoserver可以把数据作为maps/images来发布(利用WMS来实现)也可以直接发布实际的数据(利用WFS来实现),同时也提供了修改, 删除和新增的功能(利用WFS-T)。
最后下载OpenLayers。
2. 发布地图
参考GeoServer发布shape数据的方法,发布一个postgis中的一个空间表。发布过程主要进行如下步骤:
- 创建数据源:依次选择如下菜单,Config->Data->Stores->New,在新建数据源页面,选择数据源的类型为postgis,设置数据源的id为GeoServer_Tutorial。在数据源编辑页面分别设置postgis的一些连接参数,确认输入无误以后,确定。(注意别忘了应用,保存一下刚才的设置)
- 创建要素类型:依次选择如下菜单,Config->Data->FeatureType->New,从列表中选择要素类型名称:GeoServer_Tutorial::[TableName],在要素类型编辑页面中要设置要素类型的SRS,这里我们设置为:4326(WGS84),点击generate让Geoserver计算要素类型的BoundBox,最后提交,同样应用,保存。
这样一个地图就发布完成了(当然这里我们没有配置地图的显示样式,直接采用了GeoServer内置的显示样式)。选择Demo->Map Preview可以查看刚才发布的地图的显示效果。当然这里是使用MapBuilder来展示刚才我们发布的地图,下面我们用OpenLayers来展示一下我们刚才发布的地图。
3. 展示地图
var map = new OpenLayers.Map(‘map‘);
var options = {maxResolution: ‘auto‘, numZoomLevels: 10};
var my_wms = new OpenLayers.Layer.WMS(“My WMS Road“,
“http://localhost:8080/geoserver/wms“,
{layers: “topp:road_polyline“}, options);
map.addLayers([my_wms]);
map.addControl(new OpenLayers.Control.LayerSwitcher());
map.zoomTo(6);
map.setCenter(new OpenLayers.LonLat(116,39));
}
转载自:https://blog.csdn.net/zhaoxinyuan/article/details/1603210