1. 程式人生 > >GeoServer基礎教程(六):使用GeoServer釋出PostGIS表資料

GeoServer基礎教程(六):使用GeoServer釋出PostGIS表資料

轉自:http://www.360doc.com/content/15/0609/15/8279768_476806992.shtml

關於http://blog.csdn.net/muzhaomingplay/article/details/77848985

1、新建資料儲存

在Geoserver中新建POSTGIS的資料儲存(此處database、user和password為PostgreSQL中的資訊)


然後釋出圖層:


圖層釋出完成之後轉到圖層預覽,以openlayers的方式開啟:


當你看到這個圖的時候,就說明你的服務已經發布成功了!

接下來就是用Openlayers呼叫顯示,

[html]
 view plaincopyprint?在CODE上檢視程式碼片派生到我的程式碼片
  1. <htmlxmlns="http://www.w3.org/1999/xhtml">
  2. <head>
  3. <metahttp-equiv="Content-Type"content="text/html; charset=utf-8"/>
  4. <title>china EPSG:4326 image/png</title>
  5. <linkrel="stylesheet"type="text/css"href="http://200.200.200.223/OpenLayers-2.12/theme/default/style.css"/>
  6. <
    styletype="text/css">
  7.     body { font-family: sans-serif; font-weight: bold; font-size: .8em; }  
  8.     body { border: 0px; margin: 0px; padding: 0px; }  
  9.     #map { width: 100%; height: 100%; border: 0px; padding: 0px; }  
  10.     #nodelist{  
  11.         position:absolute;  
  12.         right:10px;  
  13.         top:10px;  
  14.         background:#FFF;  
  15.         border:#06F solid 2px;    
  16.         padding:5px;  
  17.     }  
  18. </style>
  19. <scripttype="text/javascript"src="http://200.200.200.223/OpenLayers-2.12/OpenLayers.js"></script>
  20. <scripttype="text/javascript"src="http://200.200.200.223/OpenLayers-2.12/lib/OpenLayers/Lang/zh-CN.js"></script>
  21. <scripttype="text/javascript">
  22.     var map, demolayer;                                                                          
  23.     OpenLayers.DOTS_PER_INCH = 90.71428571428572;  
  24.     OpenLayers.Util.onImageLoadErrorColor = 'transparent';  
  25.     function init(){  
  26.         var mapOptions = {   
  27.             resolutions: [0.703125, 0.3515625, 0.17578125, 0.087890625, 0.0439453125, 0.02197265625,   
  28.                 0.010986328125, 0.0054931640625, 0.00274658203125, 0.001373291015625, 6.866455078125E-4,   
  29.                 3.4332275390625E-4, 1.71661376953125E-4, 8.58306884765625E-5, 4.291534423828125E-5,   
  30.                 2.1457672119140625E-5, 1.0728836059570312E-5, 5.364418029785156E-6, 2.682209014892578E-6,   
  31.                 1.341104507446289E-6, 6.705522537231445E-7, 3.3527612686157227E-7  
  32.             ],  
  33.             projection: new OpenLayers.Projection('EPSG:4326'),  
  34.             maxExtent: new OpenLayers.Bounds(-180.0,-90.0,180.0,90.0),  
  35.             units: "degrees",  
  36.             controls: []  
  37.         };  
  38.         map = new OpenLayers.Map('map', mapOptions );  
  39.         map.addControl(new OpenLayers.Control.PanZoomBar({  
  40.                 position: new OpenLayers.Pixel(2, 15)  
  41.         }));  
  42.         map.addControl(new OpenLayers.Control.Navigation());  
  43.         map.addControl(new OpenLayers.Control.Scale($('scale')));  
  44.         map.addControl(new OpenLayers.Control.MousePosition({element: $('location')}));  
  45.         var wms = new OpenLayers.Layer.WMS(  
  46.             "lake",   
  47.             "http://200.200.200.223:8888/geoserver/wms",  
  48.             {  
  49.                 LAYERS: "mpro",  
  50.                 transparent:true  
  51.             },  
  52.             {  
  53.                 singleTile: false,   
  54.                 ratio: 1,   
  55.                 isBaseLayer: false,  
  56.                 visibility:true,  
  57.                 yx : {'EPSG:4326' : true}  
  58.             }   
  59.         );  
  60.         map.addLayer(wms);  
  61.         map.zoomToExtent(new OpenLayers.Bounds(73.45100463600005, 18.16324718800007,   
  62.             134.976797647, 53.53194315200005)  
  63.         );  
  64.         map.events.register('click', map, function (e) {  
  65.             console.log(e);              
  66.         });       
  67.     }  
  68. </script>
  69. </head>
  70. <bodyonLoad="init()">
  71.     <divid="map"></div>
  72. </body>
  73. </html>