文章版權由作者李曉暉和博客園共有,若轉載請於明顯處標明出處:http://www.cnblogs.com/naaoveGIS/。
1.前言
本開源方案的構架是:geoserver(服務器)+tomcat(中間件)+postgis(數據庫)+uDig(desktop)。
本文將主要講解如何將shp數據通過postgis導入到postgresql中,並且在uDig上進行展示和編輯,然后如何將postgresql中的圖層數據通過geoserver進行發布。
2.通過postgis將shp數據入庫
2.1環境
需裝有postgresql+postgis。安裝完成后,在程序目錄中可以看到:
2.2. 入庫
a. 點擊 此工具,會彈出對話框:
b.設置數據庫的連接
點擊connection,在彈出的對話框中設置連接屬性:
連接成功會有以下日志:
注意:此處的database一定要是集成了postgis的數據庫模板的數據庫才行,否則空間數據無法導入。
c.選擇要導入的shp數據
點擊Add File,會彈出如下對話框:
選擇要導入的shp數據,選擇完后點擊確定:
注意:shp所在的文件夾路徑一定要是英文,否則在導入時會導入失敗。
d.數據導入
注意:首先要點擊Options,進行編碼設置。根據我的測試,UTF-8的編碼在圖層中有中文屬性時,導入會出現錯誤。這里建議將編碼設置為:GBK。
點擊Import,開始導入。導入成功后,會有如下日志:
e.在postgresql中查看導入的shp數據:
3.通過uDig查看和編輯postgresql中的shp數據
3.1環境
需裝有uDig軟件。安裝成功后,在程序目錄中可以看到:
3.2在uDig中查看postgis中的數據
a.點擊Layer——>add,選擇PostGIS:
b.填寫連接屬性:
c.將postgis中的圖層添加到當前map中:
d.uDig中顯示添加的圖層:
3.3對圖層進行編輯
編輯完后點擊Enter:
注意:一定要點擊工具欄中的 ,才能將編輯成功提交。
4.通過geoserver發布postgresql中的shp數據
4.1 環境
需發布一個geoserver服務。發布成功后,可以在瀏覽器中打開網頁:
4.2 發布地圖服務
a.點擊stores——>add stores——>postGIS,在進入的頁面中填寫連接屬性:
b.選擇要發布的shp圖層:
c.填寫圖層信息:
d.發布服務及查看:
點擊save后,圖層即發布成功。在layer preview中可以查看發布的圖層:
注意:可以明顯的看到通過uDig編輯后的要素已被成功保存。
-----歡迎轉載,但保留版權,請於明顯處標明出處:http://www.cnblogs.com/naaoveGIS/
如果您覺得本文確實幫助了您,可以微信掃一掃,進行小額的打賞和鼓勵,謝謝 ^_^