亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種gis中間件配置管理方法

文檔序號:6471512閱讀:1071來源:國知局
專利名稱:一種gis中間件配置管理方法
技術領域
本發(fā)明涉及地理信息系統(tǒng),尤其是一種GIS中間件配置管理方法。
背景技術
目前GIS多源空間數(shù)據(jù)的集成主要有三個模式 一是空間數(shù)據(jù)交換,通過建立統(tǒng)一的數(shù)
據(jù)交換標準來約束并規(guī)范已有的各類地理信息系統(tǒng),采用數(shù)據(jù)交換標準來進行空間數(shù)據(jù)交換; 二是數(shù)據(jù)互操作模式,建立開放式地理數(shù)據(jù)互操作規(guī)范,進行地理信息系統(tǒng)互操作;三是直 接操作模式,在一個GIS軟件中實現(xiàn)對其他軟件數(shù)據(jù)格式的直接訪問、存取和空間分析。 上述三種集成模式有以下不足-
數(shù)據(jù)交換模式就是把其他格式的數(shù)據(jù)經(jīng)過專門的數(shù)據(jù)轉(zhuǎn)換程序轉(zhuǎn)換成該系統(tǒng)的數(shù)據(jù)格 式,并復制到當前系統(tǒng)的數(shù)據(jù)庫或文件中。許多軟件為了實現(xiàn)與其他系統(tǒng)交換數(shù)據(jù),制訂了 明碼的交換格式,如Arclnfo的EOO格式、ArcView的Shapefile格式等。但是由于缺乏對 空間對象統(tǒng)一的描述方法,因而轉(zhuǎn)換后不能完全準確地表達原數(shù)據(jù)的信息,經(jīng)常造成一些信 息丟失。另外,通過交換格式轉(zhuǎn)換數(shù)據(jù)的過程較為復雜,需要首先使用軟件A輸出為某種交 換格式,然后再使用軟件B從該交換格式輸入。
數(shù)據(jù)互操作模式是OpenGIS Consorti咖(OGC)制定的數(shù)據(jù)共享規(guī)范。GIS互操作是指在異 構數(shù)據(jù)庫和分布計算的情況下,GIS用戶在相互理解的基礎上,能透明地獲取所需的信息。 根據(jù)OGC頒布的規(guī)范,可以把提供數(shù)據(jù)源的軟件稱為數(shù)據(jù)服務器(Data Servers),把使用數(shù) 據(jù)的軟件稱為數(shù)據(jù)客戶(Data Clients),數(shù)據(jù)客戶使用某種數(shù)據(jù)的過程就是發(fā)出數(shù)據(jù)請求, 由數(shù)據(jù)服務器提供服務的過程,其最終目的是使數(shù)據(jù)客戶能讀取任意數(shù)據(jù)服務器提供的空間 數(shù)據(jù)。但是,互操作模式在實際應用中存在缺陷, 一個軟件訪問其他軟件的數(shù)據(jù)時,必須同 時擁有被訪問數(shù)據(jù)格式的宿主軟件,并且兩個同時運行,才能完成數(shù)據(jù)的互操作過程。這將 不可避免地增加了用戶的負擔。
直接數(shù)據(jù)訪問是在一個GIS軟件中利用空間數(shù)據(jù)引擎的方法實現(xiàn)對其他軟件數(shù)據(jù)格式的 直接訪問、存取和空間分析。直接數(shù)據(jù)訪問不僅避免了煩瑣的數(shù)據(jù)轉(zhuǎn)換,而且不要求用戶擁 有數(shù)據(jù)格式的宿主軟件,更不需要該軟件運行。但是,針對每一種要直接訪問的數(shù)據(jù)格式, 客戶軟件都要編寫其讀寫驅(qū)動,所以直接數(shù)據(jù)訪問必須對宿主軟件數(shù)據(jù)格式充分了解。如果 宿主軟件數(shù)據(jù)格式不公開,或者數(shù)據(jù)格式發(fā)生變化,客戶軟件就不得不投入大量的人力和財 力去研究該宿主軟件數(shù)據(jù)格式,而且限制了軟件的可擴展性。從整個GIS行業(yè)來看,這樣的 模式必然浪費大量的人力物力,無疑也是不可取的。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術問題是提供一種GIS中間件配置管理方法,這種方法不需要頻
4繁進行數(shù)據(jù)格式轉(zhuǎn)換、不需要宿主軟件同時運行,并且不需要大量重復性勞動即可實現(xiàn)多源
數(shù)據(jù)的集成。
本發(fā)明解決上述技術問題所采用的技術方案是-
一種GIS中間件配置管理方法,其不同之處在于它的步驟如下
1) 、客戶軟件創(chuàng)建異構數(shù)據(jù)源信息并傳送給數(shù)據(jù)源驅(qū)動管理器;
2) 、數(shù)據(jù)源驅(qū)動管理器根據(jù)所述異構數(shù)據(jù)源信息加載相應的中間件接口以及異構數(shù)據(jù)源 驅(qū)動;
3) 、所述步驟2)中的異構數(shù)據(jù)源驅(qū)動直接訪問異構數(shù)據(jù)源,然后將訪問成功的信息返回 給數(shù)據(jù)源驅(qū)動管理器,至此異構數(shù)據(jù)源和相應的數(shù)據(jù)源驅(qū)動連接成功;
4) 、客戶軟件發(fā)出請求動作,數(shù)據(jù)源驅(qū)動管理器響應其請求,調(diào)用相應的數(shù)據(jù)源驅(qū)動完 成對數(shù)據(jù)的實際處理工作后向客戶軟件返回處理結(jié)果;
5) 、客戶軟件顯示結(jié)果數(shù)據(jù)。
按以上的方案,所述步驟2)的具體步驟為數(shù)據(jù)源驅(qū)動管理器根據(jù)接收到的異構數(shù)據(jù)源 信息來匹配異構數(shù)據(jù)源驅(qū)動,然后數(shù)據(jù)源驅(qū)動管理器根據(jù)所述異構數(shù)據(jù)源信息加載相應的中 間件接口以及異構數(shù)據(jù)源驅(qū)動。
所述步驟4)的具體步驟為客戶軟件發(fā)出請求動作,數(shù)據(jù)源驅(qū)動管理器響應其請求,數(shù) 據(jù)源驅(qū)動管理器與步驟2)中所述異構數(shù)據(jù)源驅(qū)動之間通過步驟2)中己經(jīng)加載的對應中間件 接口進行信息交互,數(shù)據(jù)源驅(qū)動管理器完成對數(shù)據(jù)的實際處理工作后向客戶軟件返回處理結(jié) 果。
按以上的方案,所述異構數(shù)據(jù)源信息包括數(shù)據(jù)類型以及連接屬性。 按以上的方案,所述連接屬性是管理、控制、配置3個模塊的目錄信息。 按以上的方案,所述步驟4)中客戶軟件發(fā)出的請求動作包括瀏覽、更新、重建拓撲、空 間分析。
按以上的方案,所述步驟l)中還包括以下步驟客戶軟件創(chuàng)建數(shù)據(jù)源信息前,先判斷所 述請求數(shù)據(jù)是否為異構數(shù)據(jù);如果所述請求數(shù)據(jù)是異構數(shù)據(jù),則客戶軟件創(chuàng)建數(shù)據(jù)源信息并 傳送給數(shù)據(jù)源驅(qū)動管理器;否則客戶軟件自己處理請求數(shù)據(jù),不再創(chuàng)建異構數(shù)據(jù)源信息傳送 給數(shù)據(jù)源驅(qū)動管理器。
按以上的方案,所述步驟2)中所述中間件接口的建立過程包括以下具體步驟
2. 1)、首先,創(chuàng)建包括管理模塊、控制模塊、配置模塊的模塊組,模塊組根據(jù)GIS中間 件模塊規(guī)范進行配置,其中每個模塊下面又按照GIS中間件接口規(guī)范配置一系列接口;
2. 2)、然后通過對象實例產(chǎn)生器將異構數(shù)據(jù)源映射成為系統(tǒng)可操作的地理對象,其中對
象實例產(chǎn)生器包括中間件管理模塊對象池和中間件控制模塊對象池。
按以上的方案,所述管理模塊是負責數(shù)據(jù)源操作的模塊,所述管理模塊中包括的接口是負責管理對象池對象生成和銷毀工作的管理對象池對象生命周期控制接口、負責地理服務器 對象和地理數(shù)據(jù)庫對象生命周期控制工作的管理對象池對象接口、負責地理服務器對象交互 工作的地理服務器對象接口、負責地理數(shù)據(jù)庫對象交互工作的地理數(shù)據(jù)庫對象接口;所述控 制模塊是負責地理數(shù)據(jù)的相關操作的模塊,控制模塊中包括有以下接口負責控制對象池對 象生成和銷毀工作的控制對象池對象生命周期控制接口 、負責地理數(shù)據(jù)對象生命周期控制工 作的控制對象池對象接口、負責各地理數(shù)據(jù)模型對象交互工作的地理數(shù)據(jù)模型對象接口、負 責各地理元數(shù)據(jù)對象交互工作的地理元數(shù)據(jù)對象接口;所述配置模塊是負責中間件界面回調(diào) 的模塊,所述配置模塊包括地理數(shù)據(jù)庫創(chuàng)建、地理數(shù)據(jù)庫附加、地理數(shù)據(jù)庫注銷、地理數(shù)據(jù) 庫刪除的界面回調(diào)配置接口、自舉中間件數(shù)據(jù)源數(shù)目的接口、自舉中間件數(shù)據(jù)源信息的接口、 對中間件地理數(shù)據(jù)源進行配置時回調(diào)創(chuàng)建數(shù)據(jù)源的接口,所述接口供用戶在配置的中間件數(shù) 據(jù)源下新建、附加、注銷、刪除地理數(shù)據(jù)庫時通過數(shù)據(jù)源驅(qū)動管理器調(diào)用。
按以上的方案,所述地理對象包括簡單要素類、注記類、網(wǎng)絡類、對象類。 按以上的方案,在步驟l)之前,還包括以下具體步驟先將中間件相關信息放入客戶端 的配置文件;然后將配置文件中的中間件相關信息按地理數(shù)據(jù)源名規(guī)范生成地理數(shù)據(jù)源名連 接串,并在服務器端進行解析,從而使客戶軟件可以識別異構數(shù)據(jù)源所對應的中間件接口和 數(shù)據(jù)源驅(qū)動。
按以上的方案,所述中間件相關信息包括以下部分中間件名稱、中間件描述、管理模
塊名稱、控制模塊名稱、配置模塊名稱。
本發(fā)明的有益效果是1)、應用GIS中間件配置管理方法,方便了對不同異構數(shù)據(jù)源驅(qū)動 的調(diào)用及向客戶軟件提供一致的數(shù)據(jù)操作接口,客戶軟件不必關心具體空間數(shù)據(jù)格式就可以 無縫集成多源異構數(shù)據(jù);2)、 GIS中間件配置管理方法采用對異構空間數(shù)據(jù)直接讀取的方式, 避免了空間數(shù)據(jù)交換模式的頻繁進行數(shù)據(jù)格式轉(zhuǎn)換信息丟失的缺點;3)、 GIS軟件開發(fā)商按 照OGC標準編寫訪問自己數(shù)據(jù)的數(shù)據(jù)源驅(qū)動,將異構數(shù)據(jù)源驅(qū)動同自己的GIS數(shù)據(jù)一同開發(fā)、 發(fā)布, 一旦其內(nèi)部數(shù)據(jù)格式有所變動,相應的異構數(shù)據(jù)源驅(qū)動的修改也可以同步進行,而利 用該驅(qū)動的GIS客戶軟件不需作任何變動仍然可以集成多源異構數(shù)據(jù),避免了在直接讀取模 式下,每一個GIS軟件都要在其內(nèi)部實現(xiàn)讀取相應數(shù)據(jù)的驅(qū)動程序的重復性勞動的缺點;4)、 通過應用GIS中間件配置管理方法,只要異構數(shù)據(jù)源驅(qū)動編寫成功,就可以立即注冊入GIS 中間件,為其它GIS客戶軟件所利用,使得GIS中間件具有很強的擴展性。
GIS中間件采用驅(qū)動化的設計思想,類似于Windows設備驅(qū)動程序設計思想。不同的設 備與計算連接,設備管理器動態(tài)加載由設備商家提供驅(qū)動程序,控制設備的輸入輸出。設備 管理器向OS提供統(tǒng)一的接口,具體的設備對OS來說是透明的。類似的,GIS中間件集成多 種數(shù)據(jù)源驅(qū)動,以注冊的方式嵌入到客戶軟件中,當客戶軟件請求某種數(shù)據(jù)源時,GIS中間 件動態(tài)加載所請求的數(shù)據(jù)源驅(qū)動。GIS中間件遵循0GC標準向客戶軟件提供統(tǒng)一的接口,具 體數(shù)據(jù)源對客戶軟件來說是透明的。原來客戶軟件編寫被訪問的宿主軟件數(shù)據(jù)格式的讀寫驅(qū) 動變?yōu)橛伤拗鬈浖帉戓槍ψ约簲?shù)據(jù)格式的讀寫驅(qū)動,所有實現(xiàn)的驅(qū)動由中間件集成統(tǒng)一管 理,以便不同的GIS軟件都能利用它實現(xiàn)對多源空間數(shù)據(jù)訪問。當某種數(shù)據(jù)源的結(jié)構改變時, 只須改變其數(shù)據(jù)源驅(qū)動。這樣即不需要頻繁進行數(shù)據(jù)格式轉(zhuǎn)換又避免了很多重復性勞動。
GIS中間件是在語義層面對異構數(shù)據(jù)的轉(zhuǎn)換,是數(shù)據(jù)模型間的映射。它允許用戶在轉(zhuǎn)換 過程中重新構造數(shù)據(jù),使得用戶可以根據(jù)其特定的要求,提取相同數(shù)據(jù)源不同層面的內(nèi)容,而 不是以單一的格式輸入數(shù)據(jù)。由于不同的軟件采用不同的建模方法來表示現(xiàn)實世界,如在MapGIS中使用封閉的多邊形表示房屋、水塘等要素,房屋、水塘的描述信息如房屋層數(shù)、面 積等則作為屬性數(shù)據(jù)存儲,而在CAD中則采用多義線表示房屋、水塘等要素,屬性數(shù)據(jù)則采用 分層注記的形式。GIS中間件將語義映射和空間操作相結(jié)合,實現(xiàn)空間數(shù)據(jù)和屬性數(shù)據(jù)的重構, 避免由要素語義不同而造成的信息丟失。


圖1為GIS中間件配置管理方法流程示意圖; 圖2為GIS中間件模塊框架示意圖; 圖3為數(shù)據(jù)源驅(qū)動管理器的模塊框架示意圖; 圖4為GIS中間件的使用流程示意圖。
具體實施方案
以下結(jié)合附圖進一步說明本發(fā)明實施方式。
圖1是GIS中間件配置管理方法流程示意圖,如圖l所示, 一種GIS中間件配置管理方
法,它的步驟如下
1) 、客戶軟件創(chuàng)建異構數(shù)據(jù)源信息并傳送給數(shù)據(jù)源驅(qū)動管理器;如
2) 、數(shù)據(jù)源驅(qū)動管理器根據(jù)所述異構數(shù)據(jù)源信息加載相應的中間件接口以及異構數(shù)據(jù)源 驅(qū)動;例如,如果異構數(shù)據(jù)源是ArcGIS的Shapefile文件數(shù)據(jù),則將異構數(shù)據(jù)源對象傳送給 Shapefile驅(qū)動;
3) 、所述步驟2)中的異構數(shù)據(jù)源驅(qū)動直接訪問異構數(shù)據(jù)源,然后將訪問成功的信息返回 給數(shù)據(jù)源驅(qū)動管理器,至此異構數(shù)據(jù)源和相應的數(shù)據(jù)源驅(qū)動連接成功;
4) 、客戶軟件發(fā)出請求動作,數(shù)據(jù)源驅(qū)動管理器響應其請求,調(diào)用相應的數(shù)據(jù)源驅(qū)動完 成對數(shù)據(jù)的實際處理工作后向客戶軟件返回處理結(jié)果;
5) 、客戶軟件顯示結(jié)果數(shù)據(jù)。
到此已經(jīng)結(jié)束一次信息交互,如果客戶軟件還需要對該數(shù)據(jù)源訪問,重復2) -5)的步 驟。如果不再需要對該數(shù)據(jù)源訪問,用戶也可以手動卸載該數(shù)據(jù)源驅(qū)動。具體數(shù)據(jù)源類型對 GIS客戶軟件是透明的,GIS客戶軟件不需知道數(shù)據(jù)具體轉(zhuǎn)換步驟,它只需要判斷是否是異構 數(shù)據(jù)源,是則調(diào)用中間件接口,否則按照正常步驟訪問數(shù)據(jù)。
按以上的實施例,所述步驟2)的具體步驟為數(shù)據(jù)源驅(qū)動管理器根據(jù)接受到的異構數(shù)據(jù) 源信息來匹配異構數(shù)據(jù)源驅(qū)動,然后數(shù)據(jù)源驅(qū)動管理器根據(jù)所述異構數(shù)據(jù)源信息加載相應的 中間件接口以及異構數(shù)據(jù)源驅(qū)動。
按以上的實施例,所述步驟4)的具體步驟為客戶軟件發(fā)出請求動作,數(shù)據(jù)源驅(qū)動管理 器響應其請求,數(shù)據(jù)源驅(qū)動管理器與步驟2)中所述異構數(shù)據(jù)源驅(qū)動之間通過步驟2)中已經(jīng) 加載的對應中間件接口進行信息交互,數(shù)據(jù)源驅(qū)動管理器完成對數(shù)據(jù)的實際處理工作后向客 戶軟件返回處理結(jié)果。
按以上的實施例,所述異構數(shù)據(jù)源信息包括數(shù)據(jù)類型以及連接屬性。
按以上的實施例,所述連接屬性是管理、控制、配置3個模塊的目錄信息。按以上的實施例,所述步驟4)中客戶軟件發(fā)出的請求動作包括瀏覽、更新、重建拓撲、 空間分析。
按以上的實施例,所述步驟l)中還包括以下步驟客戶軟件創(chuàng)建數(shù)據(jù)源信息前,先判斷 所述請求數(shù)據(jù)是否為異構數(shù)據(jù);如果所述請求數(shù)據(jù)是異構數(shù)據(jù),則客戶軟件創(chuàng)建數(shù)據(jù)源信息 并傳送給數(shù)據(jù)源驅(qū)動管理器;否則客戶軟件自己處理請求數(shù)據(jù),不再創(chuàng)建異構數(shù)據(jù)源信息傳 送給數(shù)據(jù)源驅(qū)動管理器。
按以上的實施例,所述步驟2)中所述中間件接口的建立過程包括以下具體步驟
2. 1)、首先,創(chuàng)建包括管理模塊、控制模塊、配置模塊的模塊組,模塊組根據(jù)GIS中間 件模塊規(guī)范進行配置,其中每個模塊下面又按照GIS中間件接口規(guī)范配置一系列接口;
2. 2)、然后通過對象實例產(chǎn)生器將異構數(shù)據(jù)源映射成為系統(tǒng)可操作的地理對象,其中對
象實例產(chǎn)生器包括中間件管理模塊對象池和中間件控制模塊對象池。
按以上的實施例,所述管理模塊是負責數(shù)據(jù)源操作的模塊,所述管理模塊中包括的接口
是負責管理對象池對象生成和銷毀工作的管理對象池對象生命周期控制接口、負責地理服 務器對象和地理數(shù)據(jù)庫對象的生命周期控制工作的管理對象池對象接口、負責地理服務器對 象交互工作的地理服務器對象接口、負責地理數(shù)據(jù)庫對象交互工作的地理數(shù)據(jù)庫對象接口; 具體地說,管理模塊中包括打開地理數(shù)據(jù)庫的Open接口、取地理數(shù)據(jù)庫名稱的GetName接口、 關閉地理數(shù)據(jù)庫的Close接口、用于申請地理服務器對象的NewServer接口、用于釋放地理 服務器對象的DeleteServer接口、用于申請地理數(shù)據(jù)庫對象的NewGDB接口、用于釋放地理 數(shù)據(jù)庫對象的DeleteGDB接口、……,其中,用于申請地理服務器對象的NewServer接口 、用 于釋放地理服務器對象的DeleteServer接口、用于申請地理數(shù)據(jù)庫對象的NewGDB接口、用 于釋放地理數(shù)據(jù)庫對象的DeleteGDB接口屬于管理對象池對象接口,管理對象池對象生命周 期控制接口中有NewMngrIFactory接口 、 DeleteMngrIFactory接口 。
所述控制模塊是負責地理數(shù)據(jù)的相關操作的模塊,控制模塊中包括有以下接口負責控 制對象池對象生成和銷毀工作的控制對象池對象生命周期控制接口、負責地理數(shù)據(jù)對象的生 命周期控制工作的控制對象池對象接口、負責各地理數(shù)據(jù)模型對象交互工作的地理數(shù)據(jù)模型 對象接口、負責各地理元數(shù)據(jù)對象交互工作的地理元數(shù)據(jù)對象接口;具體地說,控制模塊中 包括取一個要素的Get接口、設置數(shù)據(jù)集名稱的SetName接口、取幾何實體的圖形信息的 Getlnfo接口、用于申請要素類對象NewFCls接口、用于釋放要素類對象DeleteFCls接口、 用于刪除要素類對象RemoveFCls接口、……,其中,用于申請要素類對象NewFCls接口、用 于釋放要素類對象DeleteFCls接口、用于刪除要素類對象RemoveFCls接口屬于控制對象池 對象接口,控制對象池對象生命周期控制接口中有NewXclsIFactory接口 、 DeleteXclsIFacory接口 。
所述配置模塊是負責中間件界面回調(diào)的模塊,所述配置模塊包括地理數(shù)據(jù)庫創(chuàng)建、地理 數(shù)據(jù)庫附加、地理數(shù)據(jù)庫注銷、地理數(shù)據(jù)庫刪除的界面回調(diào)配置接口、自舉中間件數(shù)據(jù)源數(shù)
8目的接口、自舉中間件數(shù)據(jù)源信息的接口、對中間件地理數(shù)據(jù)源進行配置時回調(diào)創(chuàng)建數(shù)據(jù)源 的接口,所述接口供用戶在配置的中間件數(shù)據(jù)源下新建、附加、注銷、刪除地理數(shù)據(jù)庫時通 過數(shù)據(jù)源驅(qū)動管理器調(diào)用。
按以上的實施例,所述地理對象包括簡單要素類、注記類、網(wǎng)絡類、對象類。 按以上的實施例,按以上的實施例,在步驟l)之前,還包括以下具體步驟 先將中間件相關信息放入客戶端的配置文件;然后將配置文件中的中間件相關信息按地 理數(shù)據(jù)源名規(guī)范生成地理數(shù)據(jù)源名連接串,并在服務器端進行解析,從而使客戶軟件可以識 別異構數(shù)據(jù)源所對應的中間件接口和數(shù)據(jù)源驅(qū)動。所述中間件相關信息包括以下部分中間 件名稱、中間件描述、管理模塊名稱、控制模塊名稱、配置模塊名稱。中間件名稱和中間件 描述這2項用戶可以自定義;管理模塊負責數(shù)據(jù)源的連接和數(shù)據(jù)庫的打開等操作;控制模塊 負責簡單要素類、注記類、網(wǎng)絡類等類的相關操作;配置模塊負責中間件界面回調(diào)。
地理數(shù)據(jù)源名(GDSN)連接字符串規(guī)范,第一種方法是按鍵值對形式來實現(xiàn),示例如下 GDSN=〃DSN=ArcGISLocal;USER=〃〃;PSW=〃〃;MANAGERMODULE=esri_Manager.dll;XCLSMODU LE:esriMng一XCls. dll;";
其中a)、關鍵字GDSN表示地理數(shù)據(jù)源名稱;b)、關鍵字USER表示用戶;c)、關鍵 字PSW表示口令;d)、關鍵字MANAGERMODULE表示中間件管理模塊名稱;e)、關鍵字 XCLSMODULE表示中間件控制模塊名稱;
地理數(shù)據(jù)源名(GDSN)連接字符串規(guī)范的另外一種實現(xiàn)方法
URL (Uniform Resource Locator)統(tǒng)一資源定位描述資源的真實物理位置,該地址由一系 列的段組成,前一段說明了獲得下一段需要采用的方法和參數(shù)。URL規(guī)范在數(shù)據(jù)中心是統(tǒng)一 的,即無論是它尋找哪種特定類型的資源或描述通過哪種機制獲取該資源,它們都采用相同 的基本語法。
URL的一般格式為
scheme:// host[:port] [/path][ query][^fragment] 其中,[]內(nèi)的內(nèi)容為可選項;每項的表示含義如下所示。 Scheme:通信協(xié)議方案
Host:主機,指定的服務器的域名系統(tǒng)(DNS)主機名或IP地址
Port:端口號,整數(shù),可選,省略時使用方案的默認端口,如http的默認端口為80 。 Path:路徑,由零或多個"/"符號隔開的字符串, 一般用來表示主機上的一個目錄或文 件地址。
Query:查詢,可選,用于給動態(tài)網(wǎng)頁(如使用CGI、 ISAPI、 PHP/JSP/ASP/ASP. NET等技 術制作的網(wǎng)頁)傳遞參數(shù),可有多個參數(shù),用"&"符號隔開,每個參數(shù)的名和值用"="符 號隔開。Fragment:信息片斷,字符串,用于指定網(wǎng)絡資源中的片斷。例如一個網(wǎng)頁中有多個名 詞解釋,可使用fragment直接定位到某一名詞解釋。
在數(shù)據(jù)中心的scheme屬性中提供的有效方案名稱有如下所示,同時支持用戶自定義遵循 該URL規(guī)范的協(xié)議。
以下為數(shù)據(jù)中心提供的scheme協(xié)議
File:本地文件傳輸協(xié)議(File Protocol),主要用于訪問本地計算機中的文件,就如 同在Windows資源管理器中打開文件一樣
ftp:文件傳輸協(xié)議FTP (File Transfer Protocal),是用于Internet上的控制文件的 雙向傳輸?shù)膮f(xié)議
gopher: (RFC-1436)網(wǎng)際G叩her協(xié)議(The Internet Gopher Protocol),是一種互聯(lián) 網(wǎng)沒有發(fā)展起來之前的一種從遠程服務器上獲取數(shù)據(jù)的協(xié)議。
http:超文本傳輸協(xié)議HTTP (Hypertext Transfer Protocol),用于傳送WWW方式的數(shù)
據(jù)
https:安全超文本傳輸協(xié)議HTTPS (Secure Hypertext Transfer Protocol) mailto :電子郵件協(xié)議(Mailto Protocol),資源為電子郵件地址,通過SMTP訪問, 通過該協(xié)議可以創(chuàng)建一個指向電子郵件地址的超級鏈接。 通過該鏈接可以在Internet中發(fā)送電子郵件。 News:通過NNTP訪問該資源。
gdbp:地理數(shù)據(jù)庫協(xié)議GDBP(Geo-Database Protocol),實現(xiàn)本地地理數(shù)據(jù)庫服務器上地 理數(shù)據(jù)庫資源的定位。
gdbpns:地理數(shù)據(jù)庫域名解析服務協(xié)議(Domain Name System),實現(xiàn)訪問本機或遠程的 地理數(shù)據(jù)庫服務器。
ImageBandDrv:柵格影像數(shù)據(jù)協(xié)議,實現(xiàn)本地地理數(shù)據(jù)庫服務器上的柵格影像數(shù)據(jù)資源 的定位。
Dbms:數(shù)據(jù)庫協(xié)議,實現(xiàn)訪問本機或遠程的數(shù)據(jù)庫,支持Access、 SQL、 Oracle三種數(shù) 據(jù)格式。
圖2是GIS中間件模塊框架示意圖,如圖2所示,根據(jù)驅(qū)動化的設計思想,通用GIS中 間件的設計為兩層模式數(shù)據(jù)源驅(qū)動管理器,異構數(shù)據(jù)源驅(qū)動。客戶軟件為了使用GIS中間 件,需要提供與GIS中間件連接的數(shù)據(jù)接口。數(shù)據(jù)接口負責與GIS中間件進行信息交互,把 客戶軟件的請求數(shù)據(jù)源類型和動作傳遞給GIS中間件,同時把數(shù)據(jù)結(jié)果返回給客戶軟件。
數(shù)據(jù)源驅(qū)動管理器與具體客戶軟件通信并分派異構數(shù)據(jù)源驅(qū)動。當客戶軟件請求某種類 型異構數(shù)據(jù)源時,數(shù)據(jù)源驅(qū)動管理器加載相應的異構數(shù)據(jù)源驅(qū)動,并把數(shù)據(jù)訪問結(jié)果返回給 客戶軟件。它為所有的客戶軟件提供統(tǒng)一的數(shù)據(jù)操作接口,不同的空間數(shù)據(jù)類型對客戶軟件 來說是透明的。
每種異構數(shù)據(jù)源驅(qū)動負責對其相應空間數(shù)據(jù)訪問,完成對空間數(shù)據(jù)的實際讀寫,并把結(jié)果返回給數(shù)據(jù)源驅(qū)動管理器。異構數(shù)據(jù)源驅(qū)動對用戶來說也是透明的。異構數(shù)據(jù)源的類型包 括ArcGIS數(shù)據(jù)、AutoCAD數(shù)據(jù)、VCT數(shù)據(jù)、Maplnfo—Mif數(shù)據(jù)、......。
圖3為數(shù)據(jù)源驅(qū)動管理器的模塊框架示意圖,如圖3所示,數(shù)據(jù)源驅(qū)動管理器模塊框架
示意圖可以分別按GIS中間件模塊規(guī)范、GIS中間件接口規(guī)范來劃分。
1. 按GIS中間件模塊規(guī)范劃分
1.1管理模塊實現(xiàn)管理對象池、地理服務器對象和地理數(shù)據(jù)庫對象的標準接口。
1.2控制模塊實現(xiàn)控制對象池、地理數(shù)據(jù)對象的標準接口。 1.3配置模塊內(nèi)部已詳細介紹。
2. 按GIS中間件接口規(guī)范劃分
2.0對象池對象生命周期控制接口,包括管理對象池對象生命周期控制接口、控制對象 池對象生命周期的控制接口,這2類接口分別負責各自對象池對象的生成和銷毀工作。
2.1管理對象池對象接口負責地理服務器對象和地理數(shù)據(jù)庫對象的生命周期控制工作。
2.2控制對象池對象接口負責地理數(shù)據(jù)對象的生命周期控制工作。
2.3地理服務器對象接口負責地理服務器對象的交互工作。
2.4地理數(shù)據(jù)庫對象接口負責地理數(shù)據(jù)庫對象的交互工作。
2.5地理數(shù)據(jù)模型對象接口負責各地理數(shù)據(jù)模型對象的交互工作。
1)、要素類對象;2)、簡單要素類對象;3)、注記類對象;4)、對象類對象;…… 2.6地理元數(shù)據(jù)對象接口負責各地理元數(shù)據(jù)對象的交互工作。 1)空間參照系對象;……
2.7配置管理接口負責異構數(shù)據(jù)源的特殊配置工作。 1)自舉數(shù)據(jù)源;2)創(chuàng)建數(shù)據(jù)源;……
圖4是GIS中間件的使用流程示意圖。在使用某個中間件前首先需要加載該中間件。
第一步注冊GIS中間件
1) 、在MapGIS的Catalog (企業(yè)管理器目錄樹)框架內(nèi),右鍵點擊"GDBConnection標 簽",彈出右鍵菜單。
2) 、在彈出的菜單中點擊"配置M即GIS數(shù)據(jù)源",出現(xiàn)"MapGIS客戶端配置管理"對話框。
3) 、 "M即GIS客戶端配置管理"對話框中點擊"MapGIS中間件"標簽,然后點擊"注 冊"按鈕,彈出"注冊中間件"對話框。其中,"中間件名稱"和"中間件描述"用戶可以自 定義;"單文件特征"對于不需要操作單機文件的用戶,可以不填寫此項,否則,要填寫所要 操作的文件后綴名,如果多種類型的文件,用分號將它們分開;"管理模塊"就是Xxx—Manager 模塊,負責數(shù)據(jù)源的連接和數(shù)據(jù)庫的打開等操作;控制模塊就是Xxx—XCls模塊,負責簡單要 素類、注記類、網(wǎng)絡類等類的相關操作;配置模塊就是Xxx一Config模塊,負責中間件界面回 調(diào)。
4) 在"注冊中間件"對話框中,填寫完各項,點擊確定,將回到"M鄰GIS客戶端配置 管理"對話框界面。如果在三個模塊所要求實現(xiàn)的接口都已經(jīng)實現(xiàn),將會注冊成功,界面表 示為"V",否則"X"。到此中間件注冊完成。
第二步添加數(shù)據(jù)源第一步完成后,中間件已被注冊成為M鄰GIS平臺可識別的數(shù)據(jù)源,我們還需要把此數(shù)據(jù) 源添加到Catalog (企業(yè)管理器目錄樹)中。
1) 、在"MapGIS客戶端配置管理"對話框中,點擊"MAPGIS數(shù)據(jù)源"標簽,然后點擊"添 加"按鈕,彈出"添加MapGIS數(shù)據(jù)源類型"對話框。
2) 、在"添加MapGIS數(shù)據(jù)源類型"對話框中選中剛才注冊的數(shù)據(jù)源類型,點擊"下一步", 彈出"添加M即GIS數(shù)據(jù)源信息"對話框。在對話框列表中顯示的是同一數(shù)據(jù)源類型不同數(shù)據(jù) 源名的列表,這些一般是中間件自舉出來的。如果該中間件數(shù)據(jù)源類型只對應一個數(shù)據(jù)源名, 點擊"添加數(shù)據(jù)源"是沒有反應的,否則,會彈出一個對話框用來添加數(shù)據(jù)源。"MapGIS數(shù) 據(jù)源名"是該數(shù)據(jù)源顯示在Catalog (企業(yè)管理器目錄樹)上的數(shù)據(jù)源名。ArcGISLocal、 VctGISLocal和MapGIS6xLocal都是僅且中有一個數(shù)據(jù)源,點擊"添加數(shù)據(jù)源"按鈕沒有有 反應;但是ArcSDE可以管理多種類型的大型數(shù)據(jù)庫(SQL、 Oracle等),它可以添加多個數(shù) 據(jù)源。點擊"添加數(shù)據(jù)源"按鈕,將彈出"添加ArcSDE數(shù)據(jù)源"對話框,其所有項都必須填 寫。
服務器名該數(shù)據(jù)源管理的數(shù)據(jù)庫所在的服務器名。例如,該數(shù)據(jù)源管理某個Oracle數(shù) 據(jù)庫,那么該項數(shù)據(jù)源的服務器名就是Oracle所在的服務器名,如WEILIPING或 192. 168. 10. 152。
實例名針對不同的數(shù)據(jù)庫,需要安裝不同的ArcSDE實例,這時會產(chǎn)生一個實例名。 0RARCL和SQL的實例名是不同的,如esri一sde或5152。
數(shù)據(jù)庫名每個ArcSDE數(shù)據(jù)源都只有一個數(shù)據(jù)庫,安裝ArcSDE時,數(shù)據(jù)庫名就已產(chǎn)生, 如sde。
版本號所操作的數(shù)據(jù)庫的在編輯過程中產(chǎn)生的某一版本名, 一般為默認版本
SDE. DEFAULT。
數(shù)據(jù)源名用戶可自己定義,它不顯示在Catalog (企業(yè)管理器目錄樹)上,而由中間 件自己保存。
3) 、按照(2)的說明,配置好"添加M即GIS數(shù)據(jù)源信息"對話框的各項,點擊"完成", 將返回"MapGIS客戶端配置管理"界面,可以看到新添加的數(shù)據(jù)源項。在Catalog (企業(yè)管 理器目錄樹)中也可以看到新添加的數(shù)據(jù)源項。至此,數(shù)據(jù)源添加成功。
第三步附加數(shù)據(jù)庫(可選)用戶要操作該類型的數(shù)據(jù),需要把數(shù)據(jù)所在的文件夾以數(shù)據(jù) 庫的形式附加到數(shù)據(jù)源中,如果該類型的數(shù)據(jù)源所包含的數(shù)據(jù)庫是一定的,數(shù)據(jù)源添加成功 的同時,數(shù)據(jù)庫就已經(jīng)存在,那么該類型的數(shù)據(jù)源不需要第三步。在Catalog (企業(yè)管理器 目錄樹)框架下,右鍵單擊該數(shù)據(jù)源,然后點擊附加數(shù)據(jù)庫菜單項,彈出對話框。其中"要 附加的數(shù)據(jù)庫路徑"必須要填寫,它是該類型數(shù)據(jù)所在的文件夾。填寫完各項,點擊確定, 在Catalog (企業(yè)管理器目錄樹)中可以看到該數(shù)據(jù)庫已經(jīng)附加完成。每一個ArcSDE數(shù)據(jù)源 僅且只有一個固定的數(shù)據(jù)庫,所以,不能附加數(shù)據(jù)庫。ArcGISLocal、 VctGISLocal和 MapGIS6xLocal都需要附加數(shù)據(jù)庫。ArcGISLocal可以附加三種類型的數(shù)據(jù)庫shapefile、 access和coverage。 VctGISLocal和MapGIS6xLocal都是只可以附加一種數(shù)據(jù)庫類型。
不再使用該中間件時即可卸載中間件。
第一步刪除數(shù)據(jù)源卸載該類型的中間件,需要刪除該類型的所有數(shù)據(jù)源。在"M鄰GIS 客戶端配置管理"對話框的"MapGIS數(shù)據(jù)源"標簽下,選中要刪除的數(shù)據(jù)源,點擊刪除按鈕 即可。第二步注銷中間件在"M鄰GIS客戶端配置管理"對話框的"MapGIS中間件"標簽下, 選中要注銷的中間件,點擊"注銷"按鈕即可。
本發(fā)明專利說明書中所述的接口并不一定只是一個接口,也可能是一組接口的統(tǒng)稱。 以上結(jié)合附圖描述了本發(fā)明的實施方式,本領域內(nèi)熟練的技術人員結(jié)合MapGIS 二次開
發(fā)幫助以及公開的GIS開發(fā)資料可以開發(fā)出具體軟件代碼,本領域內(nèi)熟練的技術人員可以在所附權利要求的范圍內(nèi)做出各種變形或修改。
權利要求
1、一種GIS中間件配置管理方法,其特征在于它的步驟如下1)、客戶軟件創(chuàng)建異構數(shù)據(jù)源信息并傳送給數(shù)據(jù)源驅(qū)動管理器;2)、數(shù)據(jù)源驅(qū)動管理器根據(jù)所述異構數(shù)據(jù)源信息加載相應的中間件接口以及異構數(shù)據(jù)源驅(qū)動;3)、所述步驟2)中的異構數(shù)據(jù)源驅(qū)動直接訪問異構數(shù)據(jù)源,然后將訪問成功的信息返回給數(shù)據(jù)源驅(qū)動管理器,至此異構數(shù)據(jù)源和相應的異構數(shù)據(jù)源驅(qū)動連接成功;4)、客戶軟件發(fā)出請求動作,數(shù)據(jù)源驅(qū)動管理器響應其請求,調(diào)用相應的數(shù)據(jù)源驅(qū)動完成對數(shù)據(jù)的實際處理工作后向客戶軟件返回處理結(jié)果;5)、客戶軟件顯示結(jié)果數(shù)據(jù)。
2、 如權利要求1所述的GIS中間件配置管理方法,其特征在于所述步驟2)的具體步驟為數(shù)據(jù)源驅(qū)動管理器根據(jù)接收到的異構數(shù)據(jù)源信息來匹配異構數(shù)據(jù)源驅(qū)動,然后數(shù)據(jù)源驅(qū)動管理器根據(jù)所述異構數(shù)據(jù)源信息加載相應的中間件接口以及異構數(shù)據(jù)源驅(qū)動。
3、 如權利要求1所述的GIS中間件配置管理方法,其特征在于所述步驟4)的具體步驟為客戶軟件發(fā)出請求動作,數(shù)據(jù)源驅(qū)動管理器響應其請求,數(shù)據(jù)源驅(qū)動管理器與步驟2)中所述異構數(shù)據(jù)源驅(qū)動之間通過步驟2)中已經(jīng)加載的對應中間件接口進行信息交互,數(shù)據(jù)源驅(qū)動管理器完成對數(shù)據(jù)的實際處理工作后向客戶軟件返回處理結(jié)果。
4、 如權利要求1所述的GIS中間件配置管理方法,其特征在于所述異構數(shù)據(jù)源信息包括數(shù)據(jù)類型以及連接屬性。
5、 如權利要求4所述的GIS中間件配置管理方法,其特征在于所述連接屬性是管理、控制、配置3個模塊的目錄信息。
6、 如權利要求1所述的GIS中間件配置管理方法,其特征在于所述步驟4)中客戶軟件發(fā)出的請求動作包括瀏覽、更新、重建拓撲、空間分析。
7、 如權利要求1所述的GIS中間件配置管理方法,其特征在于所述步驟l)中還包括以下步驟客戶軟件創(chuàng)建數(shù)據(jù)源信息前,先判斷所述請求數(shù)據(jù)是否為異構數(shù)據(jù);如果所述請求數(shù)據(jù)是異構數(shù)據(jù),則客戶軟件創(chuàng)建數(shù)據(jù)源信息并傳送給數(shù)據(jù)源驅(qū)動管理器;否則客戶軟件自己處理請求數(shù)據(jù),不再創(chuàng)建異構數(shù)據(jù)源信息傳送給數(shù)據(jù)源驅(qū)動管理器。
8、 如權利要求l或2或3或4或5或6或7所述的GIS中間件配置管理方法,其特征在于-所述步驟2)中所述中間件接口的建立過程包括以下具體步驟2. 1)、首先,創(chuàng)建包括管理模塊、控制模塊、配置模塊的模塊組,模塊組根據(jù)GIS中間件模塊規(guī)范進行配置,其中每個模塊下面又按照GIS中間件接口規(guī)范配置一系列接口;2. 2)、然后通過對象實例產(chǎn)生器將異構數(shù)據(jù)源映射成為系統(tǒng)可操作的地理對象,其中對象實例產(chǎn)生器包括中間件管理模塊對象池和中間件控制模塊對象池。
9、 如權利要求8所述的GIS中間件配置管理方法,其特征在于所述管理模塊是負責數(shù)據(jù)源操作的模塊,所述管理模塊中包括的接口是負責管理對象池對象生成和銷毀工作的管理對象池對象生命周期控制接口 、負責地理服務器對象和地理數(shù)據(jù)庫對象的生命周期控制工作的管理對象池對象接口、負責地理服務器對象交互工作的地理服務器對象接口、負責地理數(shù)據(jù)庫對象交互工作的地理數(shù)據(jù)庫對象接口;所述控制模塊是負責地理數(shù)據(jù)的相關操作的模塊,控制模塊中包括有以下接口負責控制對象池對象生成和銷毀工作的控制對象池對象生命周期控制接口、負責地理數(shù)據(jù)對象的生命周期控制工作的控制對象池對象接口、負責各地理數(shù)據(jù)模型對象交互工作的地理數(shù)據(jù)模型對象接口、負責各地理元數(shù)據(jù)對象交互工作的地理元數(shù)據(jù)對象接口;所述配置模塊是負責中間件界面回調(diào)的模塊,所述配置模塊包括地理數(shù)據(jù)庫創(chuàng)建、地理數(shù)據(jù)庫附加、地理數(shù)據(jù)庫注銷、地理數(shù)據(jù)庫刪除的界面回調(diào)配置接口、自舉中間件數(shù)據(jù)源數(shù)目的接口、自舉中間件數(shù)據(jù)源信息的接口、對中間件地理數(shù)據(jù)源進行配置時回調(diào)創(chuàng)建數(shù)據(jù)源的接口,所述接口供用戶在配置的中間件數(shù)據(jù)源下新建、附加、注銷、刪除地理數(shù)據(jù)庫時通過數(shù)據(jù)源驅(qū)動管理器調(diào)用。
10、 如權利要求8所述的GIS中間件配置管理方法,其特征在于所述地理對象包括簡單要素類、注記類、網(wǎng)絡類、對象類。
11、 如權利要求1所述的GIS中間件配置管理方法,其特征在于在步驟l)之前,還包括以下具體步驟先將中間件相關信息放入客戶端的配置文件;然后將配置文件中的中間件相關信息按地理數(shù)據(jù)源名規(guī)范生成地理數(shù)據(jù)源名連接串,并在服務器端進行解析,從而使客戶軟件可以識別異構數(shù)據(jù)源所對應的中間件接口和數(shù)據(jù)源驅(qū)動。
12、 如權利要求11所述的GIS中間件配置管理方法,其特征在于所述中間件相關信息包括以下部分中間件名稱、中間件描述、管理模塊名稱、控制模塊名稱、配置模塊名稱。
全文摘要
本發(fā)明涉及地理信息系統(tǒng),尤其是一種GIS中間件配置管理方法,它的步驟如下1)客戶軟件創(chuàng)建異構數(shù)據(jù)源信息并傳送給數(shù)據(jù)源驅(qū)動管理器;2)數(shù)據(jù)源驅(qū)動管理器根據(jù)所述異構數(shù)據(jù)源信息加載相應的中間件接口以及異構數(shù)據(jù)源驅(qū)動;3)所述步驟2)中的異構數(shù)據(jù)源驅(qū)動直接訪問異構數(shù)據(jù)源,然后將訪問成功的信息返回給數(shù)據(jù)源驅(qū)動管理器,至此數(shù)據(jù)源和相應的數(shù)據(jù)源驅(qū)動連接成功;4)客戶軟件發(fā)出請求動作,數(shù)據(jù)源驅(qū)動管理器響應其請求,調(diào)用相應的數(shù)據(jù)源驅(qū)動完成對數(shù)據(jù)的實際處理工作后向客戶軟件返回處理結(jié)果;5)客戶軟件顯示結(jié)果數(shù)據(jù)。該方法不需要頻繁進行數(shù)據(jù)格式轉(zhuǎn)換,不需要大量重復性勞動即可實現(xiàn)多源數(shù)據(jù)的集成。
文檔編號G06F17/30GK101493825SQ200810236869
公開日2009年7月29日 申請日期2008年12月17日 優(yōu)先權日2008年12月17日
發(fā)明者亮 吳, 吳信才, 忠 謝 申請人:武漢中地數(shù)碼科技有限公司;中國地質(zhì)大學(武漢)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1