GeoServer基础教程(六):使用GeoServer发布PostGIS表数据
2017-09-05 14:32
411 查看
转自:http://www.360doc.com/content/15/0609/15/8279768_476806992.shtml
关于PostgreSQL、PostGIS安装使用和Shapefile文件的导入请查看http://blog.csdn.net/muzhaomingplay/article/details/77848985
1、新建数据存储
在Geoserver中新建POSTGIS的数据存储(此处database、user和password为PostgreSQL中的信息)
然后发布图层:
图层发布完成之后转到图层预览,以openlayers的方式打开:
当你看到这个图的时候,就说明你的服务已经发布成功了!
接下来就是用Openlayers调用显示,
[html] view
plaincopyprint?
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>china EPSG:4326 image/png</title>
<link rel="stylesheet" type="text/css" href="http://200.200.200.223/OpenLayers-2.12/theme/default/style.css"/>
<style type="text/css">
body { font-family: sans-serif; font-weight: bold; font-size: .8em; }
body { border: 0px; margin: 0px; padding: 0px; }
#map { width: 100%; height: 100%; border: 0px; padding: 0px; }
#nodelist{
position:absolute;
right:10px;
top:10px;
background:#FFF;
border:#06F solid 2p
4000
x;
padding:5px;
}
</style>
<script type="text/javascript" src="http://200.200.200.223/OpenLayers-2.12/OpenLayers.js"></script>
<script type="text/javascript" src="http://200.200.200.223/OpenLayers-2.12/lib/OpenLayers/Lang/zh-CN.js"></script>
<script type="text/javascript">
var map, demolayer;
OpenLayers.DOTS_PER_INCH = 90.71428571428572;
OpenLayers.Util.onImageLoadErrorColor = 'transparent';
function init(){
var mapOptions = {
resolutions: [0.703125, 0.3515625, 0.17578125, 0.087890625, 0.0439453125, 0.02197265625,
0.010986328125, 0.0054931640625, 0.00274658203125, 0.001373291015625, 6.866455078125E-4,
3.4332275390625E-4, 1.71661376953125E-4, 8.58306884765625E-5, 4.291534423828125E-5,
2.1457672119140625E-5, 1.0728836059570312E-5, 5.364418029785156E-6, 2.682209014892578E-6,
1.341104507446289E-6, 6.705522537231445E-7, 3.3527612686157227E-7
],
projection: new OpenLayers.Projection('EPSG:4326'),
maxExtent: new OpenLayers.Bounds(-180.0,-90.0,180.0,90.0),
units: "degrees",
controls: []
};
map = new OpenLayers.Map('map', mapOptions );
map.addControl(new OpenLayers.Control.PanZoomBar({
position: new OpenLayers.Pixel(2, 15)
}));
map.addControl(new OpenLayers.Control.Navigation());
map.addControl(new OpenLayers.Control.Scale($('scale')));
map.addControl(new OpenLayers.Control.MousePosition({element: $('location')}));
var wms = new OpenLayers.Layer.WMS(
"lake",
"http://200.200.200.223:8888/geoserver/wms",
{
LAYERS: "mpro",
transparent:true
},
{
singleTile: false,
ratio: 1,
isBaseLayer: false,
visibility:true,
yx : {'EPSG:4326' : true}
}
);
map.addLayer(wms);
map.zoomToExtent(new OpenLayers.Bounds(73.45100463600005, 18.16324718800007,
134.976797647, 53.53194315200005)
);
map.events.register('click', map, function (e) {
console.log(e);
});
}
</script>
</head>
<body onLoad="init()">
<div id="map"></div>
</body>
</html>
关于PostgreSQL、PostGIS安装使用和Shapefile文件的导入请查看http://blog.csdn.net/muzhaomingplay/article/details/77848985
1、新建数据存储
在Geoserver中新建POSTGIS的数据存储(此处database、user和password为PostgreSQL中的信息)
然后发布图层:
图层发布完成之后转到图层预览,以openlayers的方式打开:
当你看到这个图的时候,就说明你的服务已经发布成功了!
接下来就是用Openlayers调用显示,
[html] view
plaincopyprint?
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>china EPSG:4326 image/png</title>
<link rel="stylesheet" type="text/css" href="http://200.200.200.223/OpenLayers-2.12/theme/default/style.css"/>
<style type="text/css">
body { font-family: sans-serif; font-weight: bold; font-size: .8em; }
body { border: 0px; margin: 0px; padding: 0px; }
#map { width: 100%; height: 100%; border: 0px; padding: 0px; }
#nodelist{
position:absolute;
right:10px;
top:10px;
background:#FFF;
border:#06F solid 2p
4000
x;
padding:5px;
}
</style>
<script type="text/javascript" src="http://200.200.200.223/OpenLayers-2.12/OpenLayers.js"></script>
<script type="text/javascript" src="http://200.200.200.223/OpenLayers-2.12/lib/OpenLayers/Lang/zh-CN.js"></script>
<script type="text/javascript">
var map, demolayer;
OpenLayers.DOTS_PER_INCH = 90.71428571428572;
OpenLayers.Util.onImageLoadErrorColor = 'transparent';
function init(){
var mapOptions = {
resolutions: [0.703125, 0.3515625, 0.17578125, 0.087890625, 0.0439453125, 0.02197265625,
0.010986328125, 0.0054931640625, 0.00274658203125, 0.001373291015625, 6.866455078125E-4,
3.4332275390625E-4, 1.71661376953125E-4, 8.58306884765625E-5, 4.291534423828125E-5,
2.1457672119140625E-5, 1.0728836059570312E-5, 5.364418029785156E-6, 2.682209014892578E-6,
1.341104507446289E-6, 6.705522537231445E-7, 3.3527612686157227E-7
],
projection: new OpenLayers.Projection('EPSG:4326'),
maxExtent: new OpenLayers.Bounds(-180.0,-90.0,180.0,90.0),
units: "degrees",
controls: []
};
map = new OpenLayers.Map('map', mapOptions );
map.addControl(new OpenLayers.Control.PanZoomBar({
position: new OpenLayers.Pixel(2, 15)
}));
map.addControl(new OpenLayers.Control.Navigation());
map.addControl(new OpenLayers.Control.Scale($('scale')));
map.addControl(new OpenLayers.Control.MousePosition({element: $('location')}));
var wms = new OpenLayers.Layer.WMS(
"lake",
"http://200.200.200.223:8888/geoserver/wms",
{
LAYERS: "mpro",
transparent:true
},
{
singleTile: false,
ratio: 1,
isBaseLayer: false,
visibility:true,
yx : {'EPSG:4326' : true}
}
);
map.addLayer(wms);
map.zoomToExtent(new OpenLayers.Bounds(73.45100463600005, 18.16324718800007,
134.976797647, 53.53194315200005)
);
map.events.register('click', map, function (e) {
console.log(e);
});
}
</script>
</head>
<body onLoad="init()">
<div id="map"></div>
</body>
</html>
相关文章推荐
- 使用GeoServer发布PostGIS表数据
- GeoServer基础教程(三):部署发布Shapefile地图数据
- 使用GeoServer发布shp数据为WMS服务和WFS服务(图文教程)
- GeoServer基础教程(五):使用OpenLayers调用GeoServer发布的地图服务
- 使用Geoserver发布ArcSDE空间数据
- GeoServer基础教程(四):空间数据互操作的接口规范WMS、WFS和WCS
- iOS基础网络教程-Swift版本: 3.使用UIWebView加载本地的数据
- iOS基础网络教程-Swift版本: 2.使用UIWebView请求数据
- ASP.NET基础教程-使用CommandBuilder对象自动生成SQL语句对数据进行批量更新
- GeoServer发布PostGIS数据
- 开源WebGIS实施方案(四):GeoServer发布PostGIS数据
- Geoserver发布PostGIS地图数据:问题记录
- 使用Sqlserver事务发布实现数据同步(sql2008)_Mssq l数据库教程
- 使用GeoServer发布ArcSDE 9.3数据
- 使用GeoServer发布shp数据为WMS服务和WFS服务
- Scott Mitchell 的ASP.NET 2.0数据操作教程之七:使用DropDownList过滤的主/从报表
- [翻译]Scott Mitchell 的ASP.NET 2.0数据教程之十四:使用FormView 的模板
- Scott Mitchell 的ASP.NET 2.0数据教程之四:: 使用ObjectDataSource展现数据
- Scott Mitchell 的ASP.NET 2.0数据教程之十四:使用FormView 的模板
- Scott Mitchell 的ASP.NET 2.0数据教程之十二:在GridView控件中使用TemplateField