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