專利名稱:用于構(gòu)建戶外數(shù)據(jù)采集程序的框架以及程序構(gòu)建方法
技術(shù)領(lǐng)域:
本發(fā)明計(jì)算機(jī)編程領(lǐng)域,尤其涉及一種用于構(gòu)建戶外數(shù)據(jù)采集程序的框架以及方法。
背景技術(shù):
基于移動(dòng)終端的戶外數(shù)據(jù)采集程序是指運(yùn)行在移動(dòng)智能設(shè)備如平板、智能手機(jī)以及便攜式電腦等終端上,為戶外采集工作提供計(jì)算機(jī)技術(shù)支持的應(yīng)用程序。農(nóng)業(yè)、林業(yè)、氣象學(xué)、地質(zhì)學(xué)、昆蟲學(xué)、生態(tài)學(xué)等眾多行業(yè)都有大量的戶外采集工作。目前戶外數(shù)據(jù)采集程序構(gòu)建方法是根據(jù)戶外采集工作的具體需求確定程序的體系結(jié)構(gòu),設(shè)計(jì)數(shù)據(jù)庫結(jié)構(gòu)、模塊組織方式,配置程序界面樣式并在上述基礎(chǔ)上完成程序的詳細(xì)設(shè)計(jì)和代碼編寫。由于上述程序是基于具體需求而設(shè)計(jì)的,故針對不同的采集對象需要構(gòu)建不同采集程序,且由于采集過程中問題的出現(xiàn),有可能需要對程序進(jìn)行如添加新采集項(xiàng)等更新等操作,上述方法雖然具有可操作性,但是存在以下問題:第一:針對不同的戶外采集工作編寫不同的程序,存在大量的重復(fù)性的工作;第二:軟件升級(jí)、更改往往涉及大量的代碼工作必須由專業(yè)人士來進(jìn)行,即便是由專業(yè)人士進(jìn)行操作亦很繁瑣;第三:針對于有很多不同種戶外采集工作的單位,隨著應(yīng)用程序的增多,在培訓(xùn)、維護(hù)方面的消耗的資源多,程序間的數(shù)據(jù)交互越來越多越來越困難。
發(fā)明內(nèi)容
(一)發(fā)明目的本發(fā)明旨在提供一種簡單快捷構(gòu)建戶外數(shù)據(jù)采集程序的框架以及程序構(gòu)建方法。(二)技術(shù)方案為達(dá)上述目的,本發(fā)明用于構(gòu)建戶外數(shù)據(jù)采集程序的框架,包括應(yīng)用程序模板以及框架組件庫;所述應(yīng)用程序模板,包括為戶外數(shù)據(jù)采集程序提供基礎(chǔ)界面的基礎(chǔ)界面模塊以及用以支撐戶外數(shù)據(jù)采集程序的基礎(chǔ)界面運(yùn)行并提供組件庫接口的容器組件類;所述框架組件庫,用以封裝數(shù)據(jù)采集方法并通過所述組件庫接口為構(gòu)建戶外數(shù)據(jù)采集程序提供組件。優(yōu)選地,所述框架組件庫包括:系統(tǒng)管理組件,用于完成戶外數(shù)據(jù)采集程序的基礎(chǔ)操作;所述基礎(chǔ)操作包括數(shù)據(jù)庫重置、程序設(shè)置、程序更新以及程序幫助;數(shù)據(jù)管理組件,用于通過所述基礎(chǔ)界面上的控件觸發(fā)動(dòng)態(tài)構(gòu)建采集界面并承擔(dān)采集數(shù)據(jù)管理;地圖服務(wù)組件,用于完成戶外數(shù)據(jù)采集程序中空間數(shù)據(jù)查詢以及基于位置的服務(wù);
網(wǎng)絡(luò)服務(wù)組件,用于實(shí)現(xiàn)戶外數(shù)據(jù)采集程序運(yùn)行時(shí)服務(wù)器端與戶外數(shù)據(jù)采集程序間的數(shù)據(jù)交互。優(yōu)選地,所述數(shù)據(jù)管理組件包括數(shù)據(jù)庫交互子組件、結(jié)構(gòu)表子組件、數(shù)據(jù)表管理子組件、界面管理子組件、矢量數(shù)據(jù)解析子組件;所述數(shù)據(jù)庫交互子組件,用于為所述數(shù)據(jù)表管理子組件創(chuàng)建、修改、刪除數(shù)據(jù)表以及所述界面管理子組件讀取、修改、添加、刪除以及查詢數(shù)據(jù)記錄提供交互方法;所述結(jié)構(gòu)表子組件,用于構(gòu)建、管理結(jié)構(gòu)表,為所述數(shù)據(jù)表管理子組件以及所述界面管理子組件提供數(shù)據(jù)支持;所述結(jié)構(gòu)表用以對數(shù)據(jù)進(jìn)行管理;所述數(shù)據(jù)表管理子組件,用于構(gòu)建、管理采集數(shù)據(jù)表;所述采集數(shù)據(jù)表,用于存儲(chǔ)采集數(shù)據(jù);所述界面管理子組件,用于通過基礎(chǔ)界面的控件觸發(fā)構(gòu)建采集界面并管理采集數(shù)據(jù)表;所述矢量數(shù)據(jù)解析子組件,用于解析矢量文件并實(shí)現(xiàn)空間數(shù)據(jù)存儲(chǔ)、更新、查詢以及刪除。優(yōu)選地,所述地圖服務(wù)組件包括地圖容器子組件、圖層管理子組件、樣本采集子組件以及圖斑采集子組件;所述地圖容器子組件,用于根據(jù)坐標(biāo)系參數(shù)組織矢量數(shù)據(jù)和/或?qū)崿F(xiàn)地圖瓦片結(jié)構(gòu)數(shù)據(jù)的空間可視化以及地圖各圖層渲染方式的管理;所述圖層管理子組件,用于動(dòng)態(tài)地組織管理各類型的空間數(shù)據(jù);所述樣本采集子組件,用于動(dòng)態(tài)構(gòu)建采集樣本列表并通過采集樣本列表與采集界面連接;所述圖斑采集子組件,用于根據(jù)采集移動(dòng)路線繪制閉合圖斑以及編輯所述閉合圖斑的空間特征以及屬性特征。優(yōu)選地,所述網(wǎng)絡(luò)服務(wù)組件還包括用戶數(shù)據(jù)交互子組件、結(jié)構(gòu)表交互子組件、采集數(shù)據(jù)交互子組件以及程序更新交互子組件;所述用戶數(shù)據(jù)交互子組件,用于接收網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)并輸出返回值;所述結(jié)構(gòu)表交互子組件,用于向所述結(jié)構(gòu)表子組件傳輸數(shù)據(jù);所述采集數(shù)據(jù)交互子組件,用于接收采集數(shù)據(jù);所述程序更新交互子組件,用于傳遞程序更新數(shù)據(jù)。優(yōu)選地,所述基礎(chǔ)界面模塊包括用以修改所述基礎(chǔ)界面的模塊提供的基礎(chǔ)界面的
第一自定義接口。優(yōu)選地,所述界面容器類還包括用以實(shí)現(xiàn)從外界讀取組件的第二自定義接口。優(yōu)選地,所述用于構(gòu)建戶外數(shù)據(jù)采集程序的框架還包括框架輔助資源;所述框架輔助資源包括按預(yù)設(shè)格式動(dòng)態(tài)生成任務(wù)文件的任務(wù)構(gòu)建子程序、用于空間數(shù)據(jù)下載的地圖下載模塊以及用于為戶外數(shù)據(jù)采集程序提供自定義規(guī)范以及數(shù)據(jù)支持的資源文件。為達(dá)上述目的,本發(fā)明戶外數(shù)據(jù)采集程序構(gòu)建方法,用于上述的用于構(gòu)建戶外數(shù)據(jù)采集程序的框架中,包括以下步驟:步驟1:編輯應(yīng)用程序模板以構(gòu)建、編輯戶外數(shù)據(jù)采集程序基礎(chǔ)界面,繼承界面容器類的屬性完成戶外數(shù)據(jù)采集程序組織結(jié)構(gòu)的搭建;步驟2:通過組件庫接口調(diào)用框架組件庫中的組件。進(jìn)一步地,所述用于構(gòu)建戶外數(shù)據(jù)采集程序的方法還包括:步驟3:根據(jù)戶外數(shù)據(jù)采集的需要通過界面容器類中的第二自定義接口自定義組件;步驟4:定義網(wǎng)絡(luò)服務(wù)子組件的檢索規(guī)范。(三)本發(fā)明用于構(gòu)建戶外數(shù)據(jù)采集程序的框架以及程序構(gòu)建方法的有益效果:第一:本發(fā)明用于構(gòu)建戶外數(shù)據(jù)采集程序的框架以及程序構(gòu)建方法,根據(jù)不同的用于戶外數(shù)據(jù)采集的程序存在的相同或相似的部分,提出了一種用于程序編寫的框架或采用上述框架編寫程序的方法,以避免程序編寫中的大量的重復(fù)性工作且方便快捷,從而避免了軟件工程師或程序工程師大量的枯燥的重復(fù)性勞動(dòng),提高了程序構(gòu)建的效率。第二:本發(fā)明用于構(gòu)建戶外數(shù)據(jù)采集程序的框架以及程序構(gòu)建方法,當(dāng)存在新任務(wù)且需行更改程序時(shí),操作更加簡便;用戶可以根據(jù)需要自行操作,即便是專業(yè)人士進(jìn)行修改也更加快捷。第三:針對于有很多不同種戶外采集工作的單位,應(yīng)用程序的維護(hù)、培訓(xùn)等工作大大的簡化了。
圖1為本發(fā)明實(shí)施例一所述的用于構(gòu)建戶外數(shù)據(jù)采集程序的結(jié)構(gòu)示意圖;圖2為本發(fā)明實(shí)施例二所述的數(shù)據(jù)管理組件的結(jié)構(gòu)示意圖;圖3為本發(fā)明實(shí)施例二所述的地圖服務(wù)組件的結(jié)構(gòu)示意圖;圖4是本發(fā)明實(shí)施例四所述的系統(tǒng)管理組件的結(jié)構(gòu)示意圖;圖5是本發(fā)明實(shí)施例五所述的網(wǎng)絡(luò)服務(wù)組件的結(jié)構(gòu)示意圖;圖6是本發(fā)明實(shí)施例六所述的用于構(gòu)建戶外數(shù)據(jù)采集程序的結(jié)構(gòu)示意圖;圖7是本發(fā)明實(shí)施例三所述的采集界面結(jié)構(gòu)示意圖;圖8為本發(fā)明第二實(shí)施例的戶外數(shù)據(jù)采集程序構(gòu)建方法流程圖。
具體實(shí)施例方式下面結(jié)合說明書附圖以及實(shí)施例對本發(fā)明用于構(gòu)建戶外數(shù)據(jù)采集程序的框架進(jìn)一步的說明。實(shí)施例一:本實(shí)施例用于構(gòu)建戶外數(shù)據(jù)采集程序的框架包括應(yīng)用程序模板以及框架組件庫;所述應(yīng)用程序模板,包括為戶外數(shù)據(jù)采集程序提供基礎(chǔ)界面的基礎(chǔ)界面模塊以及用以支撐戶外數(shù)據(jù)采集程序的基礎(chǔ)界面運(yùn)行并提供組件庫接口的容器組件類;通過基礎(chǔ)界面模塊編寫程序的基礎(chǔ)界面,通常所說基礎(chǔ)界面包括登陸界面、從登陸界面登錄后進(jìn)入的應(yīng)用主界面以及完成不同功能的功能界面;基礎(chǔ)界面自動(dòng)繼承了界面容器類的屬性,在具體的運(yùn)行構(gòu)成當(dāng)中由界面容器類提供支撐,所述框架組件庫,用以封裝數(shù)據(jù)采集方法并通過所述組件庫接口為構(gòu)建戶外數(shù)據(jù)采集程序提供組件??蚣芙M件庫內(nèi)封裝了各種組件,通過調(diào)用各組件以實(shí)現(xiàn)具體的功能,具體的需求根據(jù)戶外采集工作的不同而異。所述基礎(chǔ)界面上設(shè)置了空白控件或熱點(diǎn)用于從框架組件庫中所調(diào)用的組件添加。本實(shí)施例中所述的用于構(gòu)建戶外數(shù)據(jù)采集程序的框架,提供了一種全新的構(gòu)建程序方案的基礎(chǔ),通過上述框架可以快捷方便的實(shí)現(xiàn)程序的構(gòu)建,降低了程序構(gòu)建的難度,在程序需要添加新的組件時(shí)也簡單方便,無需大量的編碼工作,非專業(yè)人士也能很快的完成。實(shí)施例二:如圖1所示,本實(shí)施例用于構(gòu)建戶外數(shù)據(jù)采集程序的框架包括應(yīng)用程序模板以及框架組件庫;所述應(yīng)用程序模板,包括為戶外數(shù)據(jù)采集程序提供基礎(chǔ)界面的基礎(chǔ)界面模塊以及用以支撐戶外數(shù)據(jù)采集程序的基礎(chǔ)界面運(yùn)行并提供組件庫接口的容器組件類;所述框架組件庫,用以封裝數(shù)據(jù)采集方法并通過所述組件庫接口為構(gòu)建戶外數(shù)據(jù)采集程序提供組件;所述框架組件庫包括:系統(tǒng)管理組件,用于完成戶外數(shù)據(jù)采集程序的基礎(chǔ)操作;所述基礎(chǔ)操作包括數(shù)據(jù)庫重置、程序設(shè)置、程序更新以及程序幫助;數(shù)據(jù)管理組件,用于通過所述基礎(chǔ)界面上的控件觸發(fā)動(dòng)態(tài)構(gòu)建采集界面并承擔(dān)采集數(shù)據(jù)管理;地圖服務(wù)組件,用于完成戶外數(shù)據(jù)采集程序中空間數(shù)據(jù)查詢以及基于位置的服務(wù);網(wǎng)絡(luò)服務(wù)組件,用于實(shí)現(xiàn)戶外數(shù)據(jù)采集程序運(yùn)行時(shí)服務(wù)器端與戶外數(shù)據(jù)采集程序間的數(shù)據(jù)交互。在本實(shí)施例中具化了框架組件庫內(nèi)各組件,以實(shí)現(xiàn)各種程序功能。實(shí)施例三:本實(shí)施例在實(shí)施例一至實(shí)施例三任一實(shí)施例的基礎(chǔ)上,進(jìn)一步具化了所述數(shù)據(jù)管理組件。如圖2所示,所述數(shù)據(jù)管理組件包括數(shù)據(jù)庫交互子組件、結(jié)構(gòu)表子組件、數(shù)據(jù)表管理子組件、界面管理子組件、矢量數(shù)據(jù)解析子組件;所述數(shù)據(jù)庫交互子組件,用于為所述數(shù)據(jù)表管理子組件創(chuàng)建、修改以及刪除數(shù)據(jù)表以及各子組件讀取、修改、添加、刪除以及查詢數(shù)據(jù)提供交互方法;所述結(jié)構(gòu)表子組件,用于構(gòu)建、管理結(jié)構(gòu)表,為所述數(shù)據(jù)表管理子組件以及所述界面管理子組件提供數(shù)據(jù)支持;所述結(jié)構(gòu)表用以對數(shù)據(jù)進(jìn)行管理;如承擔(dān)結(jié)構(gòu)表的構(gòu)建與管理,提供了若干種結(jié)構(gòu)表205的構(gòu)建方法,如構(gòu)基于文件名稱以及存儲(chǔ)路徑的結(jié)構(gòu)表、基于賬戶信息以及網(wǎng)絡(luò)路徑的結(jié)構(gòu)表。所述數(shù)據(jù)表管理子組件,用于構(gòu)建、管理采集數(shù)據(jù)表;所述采集數(shù)據(jù)表,用于存儲(chǔ)采集數(shù)據(jù);所述界面管理子組件,用于通過基礎(chǔ)界面的控件觸發(fā)構(gòu)建采集界面并管理采集數(shù)據(jù)表;所述矢量數(shù)據(jù)解析子組件,用于解析矢量文件并實(shí)現(xiàn)空間數(shù)據(jù)存儲(chǔ)、更新、查詢以及刪除。
進(jìn)一步地,如圖3所示,所述地圖服務(wù)組件包括地圖容器子組件、圖層管理子組件、樣本采集子組件以及圖斑采集子組件;所述地圖容器子組件,用于根據(jù)坐標(biāo)系參數(shù)組織矢量數(shù)據(jù)和/或?qū)崿F(xiàn)地圖瓦片結(jié)構(gòu)數(shù)據(jù)的空間可視化以及地圖各圖層渲染方式的管理;所述圖層管理子組件,用于動(dòng)態(tài)地組織管理各類型的空間數(shù)據(jù);如用于管理切片地圖,矢量空間數(shù)據(jù)、采集對象專題數(shù)據(jù)并管理專題數(shù)據(jù)的查看方式等;所述樣本采集子組件,用于動(dòng)態(tài)構(gòu)建采集樣本列表并通過采集樣本列表與采集界面連接;所述圖斑采集子組件,用于根據(jù)采集移動(dòng)路線繪制閉合圖斑以及編輯所述閉合圖斑的空間特征以及屬性特征。此外,幾何測量子組件,用于提供若干種幾何測量方法并提供支持自定義測量方法編輯的接口;空間定位子組件,用于提供若干種空間定位方法;通過所述的空間定位方法可以獲取移動(dòng)終端當(dāng)前的空間坐標(biāo)以及方向,并以圖表或圖標(biāo)形式顯示在地圖上;導(dǎo)航子組件,用于提供若干種導(dǎo)航方法;所述導(dǎo)航方法通過網(wǎng)絡(luò)服務(wù)組件與服務(wù)器端進(jìn)行數(shù)據(jù)交互獲取導(dǎo)航路線,如建立當(dāng)前用戶與采集目標(biāo)位置之間的導(dǎo)航圖,提供當(dāng)前空間位置與目標(biāo)空間位置之間的最短路徑等。此外,如圖7所示所述采集界面,用于分組顯示采集數(shù)據(jù)并提供用戶管理采集數(shù)據(jù)的接口,包括采集數(shù)據(jù)分組子界面、采集數(shù)據(jù)列表子界面、采集數(shù)據(jù)錄入子界面;所述采集數(shù)據(jù)分組子界面,用于列表顯示相關(guān)采集數(shù)據(jù)表名稱,通過采集數(shù)據(jù)表名稱與采集數(shù)據(jù)列表界面關(guān)聯(lián);所述采集數(shù)據(jù)列表子界面,用于列表顯示采集數(shù)據(jù)記錄,并承擔(dān)數(shù)據(jù)記錄管理,通過數(shù)據(jù)記錄編號(hào)與采集數(shù)據(jù)錄入界面關(guān)聯(lián);所述采集數(shù)據(jù)錄入子界面,用于顯示數(shù)據(jù)錄入的具體內(nèi)容,并承擔(dān)數(shù)據(jù)記錄的錄入、保存與修改。實(shí)施例四:本實(shí)施例在上一實(shí)施例的基礎(chǔ)上,具化了所述系統(tǒng)管理組件。如圖4所示,所述系統(tǒng)管理組件包括以下子組件:用戶驗(yàn)證子組件,用于審核用戶的登錄信息以保證系統(tǒng)安全,包括網(wǎng)絡(luò)驗(yàn)證三級(jí)組件和本地驗(yàn)證三級(jí)組件,其中:網(wǎng)絡(luò)驗(yàn)證三級(jí)組件,用于將用戶錄入的賬戶與密碼數(shù)據(jù)通過所述網(wǎng)絡(luò)服務(wù)組件與服務(wù)器端用戶數(shù)據(jù)對比;本地驗(yàn)證三級(jí)組件,用于將用戶錄入的賬戶與密碼等相關(guān)數(shù)據(jù)對比驗(yàn)證;系統(tǒng)幫助子組件,用于組織管理戶外數(shù)據(jù)采集程序與以及與具體操作相關(guān)的信息;系統(tǒng)更新子組件,用于實(shí)現(xiàn)程序版本的更新;系統(tǒng)設(shè)置子組件,用于設(shè)置程序樣式,包括背景、字體等以及初始化數(shù)據(jù)庫等設(shè)置。實(shí)施例五:
如圖5所示,本實(shí)施例在上一實(shí)施例的基礎(chǔ)上,具化了所述網(wǎng)絡(luò)服務(wù)組件。所述網(wǎng)絡(luò)服務(wù)組件還包括用戶數(shù)據(jù)交互子組件、結(jié)構(gòu)表交互子組件、采集數(shù)據(jù)交互子組件以及程序更新交互子組件;所述用戶數(shù)據(jù)交互子組件,用于接收網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)并輸出返回值;具體的如用于接收網(wǎng)絡(luò)驗(yàn)證三級(jí)組件傳遞的用戶數(shù)據(jù)并返回驗(yàn)證結(jié)果給所述網(wǎng)絡(luò)驗(yàn)證三級(jí)組件;所述結(jié)構(gòu)表交互子組件,用于向所述結(jié)構(gòu)表子組件傳輸數(shù)據(jù);所述采集數(shù)據(jù)交互子組件,用于接收采集數(shù)據(jù);所述程序更新交互子組件,用于傳遞程序更新數(shù)據(jù)。實(shí)施例六:如圖6所示,本實(shí)施例用于構(gòu)建戶外數(shù)據(jù)采集程序的框架包括應(yīng)用程序模板、框架組件庫以及框架輔助資源;所述應(yīng)用程序模板,包括為戶外數(shù)據(jù)采集程序提供基礎(chǔ)界面的基礎(chǔ)界面模塊以及用以支撐戶外數(shù)據(jù)采集程序的基礎(chǔ)界面運(yùn)行并提供組件庫接口的容器組件類;所述框架組件庫,用以封裝數(shù)據(jù)采集方法并通過所述組件庫接口為構(gòu)建戶外數(shù)據(jù)采集程序提供組件。所述框架輔助資源包括按預(yù)設(shè)格式動(dòng)態(tài)生成任務(wù)文件的任務(wù)構(gòu)建子程序、用于空間數(shù)據(jù)下載的地圖下載模塊以及用于為戶外數(shù)據(jù)采集程序提供自定義規(guī)范以及數(shù)據(jù)支持的資源文件。具體的如所述任務(wù)構(gòu)建子程序動(dòng)態(tài)生成XML格式的采集任務(wù)文件,具體的采集任務(wù)文件中包含有如采樣點(diǎn)的空間位置、采用項(xiàng)目等相關(guān)信息。所述空間數(shù)據(jù)文件為程序的而應(yīng)用運(yùn)行提供查看或給予位置的相關(guān)服務(wù)的數(shù)據(jù)支持。作為本實(shí)施例進(jìn)一步的改進(jìn),所述基礎(chǔ)界面模塊包括用以修改所述基礎(chǔ)界面的模塊提供的基礎(chǔ)界面的第一自定義接口。用戶或軟件工程師可以根據(jù)需求更改基礎(chǔ)界面,修訂基礎(chǔ)界面的參數(shù);作為本實(shí)施例再進(jìn)一步的改進(jìn),所述界面容器類還包括用以實(shí)現(xiàn)從外界讀取組件的第二自定義接口。第二自定義接口用于當(dāng)框架組件庫中不能提供所需組件時(shí)可以自行編寫組件以實(shí)現(xiàn)其所需功能。本實(shí)施例可以包括一個(gè)或者多個(gè)以下優(yōu)點(diǎn):可以使用較少的編碼工作來開發(fā)具有自定義用戶界面設(shè)計(jì)的戶外數(shù)據(jù)采集程序,避免了程序構(gòu)建過程中重復(fù)工作以及對系統(tǒng)資源的消耗;構(gòu)建的戶外數(shù)據(jù)采集程序可以通過簡單地對接口的修改實(shí)現(xiàn)程序的更新維護(hù)以及功能擴(kuò)展;構(gòu)建的戶外數(shù)據(jù)采集程序培訓(xùn)和維護(hù)的消耗可以有效減少,數(shù)據(jù)交互可以更加方便簡單。下面結(jié)合說明書附圖以及實(shí)施例對本發(fā)明戶外數(shù)據(jù)采集程序構(gòu)建方法進(jìn)一步的說明。第一實(shí)施例:本實(shí)施例戶外數(shù)據(jù)采集程序構(gòu)建方法,用于上述實(shí)施例任一用于構(gòu)建戶外數(shù)據(jù)采集程序的框架中,包括以下步驟:步驟1:編輯應(yīng)用程序模板以構(gòu)建、編輯戶外數(shù)據(jù)采集程序基礎(chǔ)界面,繼承界面容器類的屬性完成戶外數(shù)據(jù)采集程序組織結(jié)構(gòu)的搭建;編輯應(yīng)用程序模板,調(diào)用基礎(chǔ)界面模塊根據(jù)具體的功能需求修改基礎(chǔ)界面并繼承相應(yīng)的界面容器類,完成戶外數(shù)據(jù)采集程序基礎(chǔ)組織結(jié)構(gòu)的搭建。例如在程序主界面編輯過程中,根據(jù)程序需要定義功能模塊的類型、名稱、圖標(biāo)、排列方式并為各功能模塊配置相應(yīng)的界面容器類;步驟2:通過組件庫接口調(diào)用框架組件庫中的組件。根據(jù)需求擴(kuò)展相應(yīng)功能模塊的界面容器類,通過組件庫接口調(diào)用框架組件庫的相關(guān)組件。例如,用戶實(shí)現(xiàn)采集界面的動(dòng)態(tài)構(gòu)建功能需要首先調(diào)用結(jié)構(gòu)表子組件和數(shù)據(jù)管理組件實(shí)現(xiàn)結(jié)構(gòu)表與數(shù)據(jù)表的相關(guān)功能,并定義結(jié)構(gòu)表名稱、結(jié)構(gòu)表數(shù)據(jù)讀取方式、采集數(shù)據(jù)表數(shù)據(jù)讀取方式等相關(guān)設(shè)置。通過上述方法實(shí)現(xiàn)了快速的構(gòu)建戶外數(shù)據(jù)采集程序的避免了大量的重復(fù)勞動(dòng)。第二實(shí)施例:如圖8所示,本實(shí)施例戶外數(shù)據(jù)采集程序構(gòu)建方法,用于上述實(shí)施例任一用于構(gòu)建戶外數(shù)據(jù)采集程序的框架中,包括以下步驟步驟1:編輯應(yīng)用程序模板以構(gòu)建、編輯戶外數(shù)據(jù)采集程序基礎(chǔ)界面,繼承界面容器類的屬性完成戶外數(shù)據(jù)采集程序組織結(jié)構(gòu)的搭建;步驟2:通過組件庫接口調(diào)用框架組件庫中的組件。步驟3:根據(jù)戶外數(shù)據(jù)采集的需要通過界面容器類的第二自定義接口自定義組件;若框架組件庫內(nèi)沒有所需組件,程序員可以通過自行編寫或從外設(shè)上調(diào)用其他組件。步驟4:定義網(wǎng)絡(luò)服務(wù)子組件的檢索規(guī)范。定義網(wǎng)絡(luò)服務(wù)組件的相關(guān)數(shù)據(jù)檢索規(guī)范。例如,用戶定義結(jié)構(gòu)表數(shù)據(jù)的訪問路徑以及根據(jù)結(jié)構(gòu)表子組件傳遞的賬戶信息訪問結(jié)構(gòu)表的檢索條件以實(shí)現(xiàn)結(jié)構(gòu)表數(shù)據(jù)的提取和返回。所述的戶外數(shù)據(jù)采集程序的構(gòu)建以運(yùn)行均是計(jì)算機(jī)系統(tǒng)提供硬件和軟件支持的。具體的意見設(shè)備如存儲(chǔ)設(shè)備,軟件支持如操作系統(tǒng)中間件(如J2EE/ETB),開發(fā)平臺(tái)(如eclipse),開發(fā)工具(如JDK)。使用本實(shí)施例所述程序構(gòu)建方法可以快速構(gòu)建適應(yīng)具體需求的戶外數(shù)據(jù)采集程序。作為本實(shí)施例的進(jìn)一步的改進(jìn),本實(shí)施例中還包括配置任務(wù)構(gòu)建子程序,讀取預(yù)定義數(shù)據(jù)表以及自動(dòng)構(gòu)建任務(wù)文件等步驟。配置任務(wù)構(gòu)建子程序的步驟,具體如訪問數(shù)據(jù)庫的路徑以及采集任務(wù)涉及的全部數(shù)據(jù)表的名稱。通過使用任務(wù)構(gòu)建子程序,可以快速構(gòu)建任務(wù)文件,提高了工作效率,同時(shí)提高了任務(wù)文件的組織規(guī)范,避免了手動(dòng)編寫任務(wù)文件可能出現(xiàn)的人為錯(cuò)誤。本發(fā)明的用于構(gòu)建戶外數(shù)據(jù)采集程序的框架和程序構(gòu)建方法,能快速構(gòu)建滿足不同通信環(huán)境、不同采集內(nèi)容并能動(dòng)態(tài)適應(yīng)采集內(nèi)容變化的戶外數(shù)據(jù)采集應(yīng)用程序,提高構(gòu)建戶外數(shù)據(jù)采集程序的效率。以上實(shí)施方式僅用于說明本發(fā)明,而并非對本發(fā)明的限制,有關(guān)技術(shù)領(lǐng)域的普通技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術(shù)方案也屬于本發(fā)明的范疇,本發(fā)明的專利保護(hù)范圍應(yīng)由權(quán)利要求限定。
權(quán)利要求
1.一種用于構(gòu)建戶外數(shù)據(jù)采集程序的框架,其特征在于, 所述用于構(gòu)建戶外數(shù)據(jù)采集程序的框架包括應(yīng)用程序模板以及框架組件庫; 所述應(yīng)用程序模板,包括為戶外數(shù)據(jù)采集程序提供基礎(chǔ)界面的基礎(chǔ)界面模塊以及用以支撐戶外數(shù)據(jù)采集程序的基礎(chǔ)界面運(yùn)行并提供組件庫接口的容器組件類; 所述框架組件庫,用以封裝數(shù)據(jù)采集方法并通過所述組件庫接口為構(gòu)建戶外數(shù)據(jù)采集程序提供組件。
2.根據(jù)權(quán)利要求1所述的用于構(gòu)建戶外數(shù)據(jù)采集程序的框架,其特征在于,所述框架組件庫包括: 系統(tǒng)管理組件,用于完成戶外數(shù)據(jù)采集程序的基礎(chǔ)操作;所述基礎(chǔ)操作包括數(shù)據(jù)庫重置、程序設(shè)置、程序更新以及程序幫助; 數(shù)據(jù)管理組件,用于通過所述基礎(chǔ)界面上的控件觸發(fā)動(dòng)態(tài)構(gòu)建采集界面并承擔(dān)采集數(shù)據(jù)管理; 地圖服務(wù)組件,用于完成戶外數(shù)據(jù)采集程序中空間數(shù)據(jù)查詢以及基于位置的服務(wù);網(wǎng)絡(luò)服務(wù)組件,用于實(shí)現(xiàn)戶外數(shù)據(jù)采集程序運(yùn)行時(shí)服務(wù)器端與戶外數(shù)據(jù)采集程序間的數(shù)據(jù)交互。
3.根據(jù)權(quán)利要求2所述的用于構(gòu)建戶外數(shù)據(jù)采集程序的框架,其特征在于,所述數(shù)據(jù)管理組件包括數(shù)據(jù)庫交互子組件、結(jié)構(gòu)表子組件、數(shù)據(jù)表管理子組件、界面管理子組件、矢量數(shù)據(jù)解析子組件; 所述數(shù)據(jù)庫交互子組件,用于為所述數(shù)據(jù)表管理子組件創(chuàng)建、修改、刪除數(shù)據(jù)表以及各子組件讀取、修改、 添加、刪除以及查詢數(shù)據(jù)提供交互方法; 所述結(jié)構(gòu)表子組件,用于構(gòu)建、管理結(jié)構(gòu)表,為所述數(shù)據(jù)表管理子組件以及所述界面管理子組件提供數(shù)據(jù)支持;所述結(jié)構(gòu)表用以對數(shù)據(jù)進(jìn)行管理; 所述數(shù)據(jù)表管理子組件,用于構(gòu)建、管理采集數(shù)據(jù)表;所述采集數(shù)據(jù)表,用于存儲(chǔ)采集數(shù)據(jù); 所述界面管理子組件,用于通過基礎(chǔ)界面的控件觸發(fā)構(gòu)建采集界面并管理采集數(shù)據(jù)表; 所述矢量數(shù)據(jù)解析子組件,用于解析矢量文件并實(shí)現(xiàn)空間數(shù)據(jù)存儲(chǔ)、更新、查詢以及刪除。
4.根據(jù)權(quán)利要求3所述的用于構(gòu)建戶外數(shù)據(jù)采集程序的框架,其特征在于,所述地圖服務(wù)組件包括地圖容器子組件、圖層管理子組件、樣本采集子組件以及圖斑采集子組件; 所述地圖容器子組件,用于根據(jù)坐標(biāo)系參數(shù)組織矢量數(shù)據(jù)和/或?qū)崿F(xiàn)地圖瓦片結(jié)構(gòu)數(shù)據(jù)的空間可視化以及地圖各圖層渲染方式的管理; 所述圖層管理子組件,用于動(dòng)態(tài)地組織管理各類型的空間數(shù)據(jù); 所述樣本采集子組件,用于動(dòng)態(tài)構(gòu)建采集樣本列表并通過采集樣本列表與采集界面連接; 所述圖斑采集子組件,用于根據(jù)采集移動(dòng)路線繪制閉合圖斑以及編輯所述閉合圖斑的空間特征以及屬性特征。
5.根據(jù)權(quán)利要求3所述的用于構(gòu)建戶外數(shù)據(jù)采集程序的框架,其特征在于,所述網(wǎng)絡(luò)服務(wù)組件還包括用戶數(shù)據(jù)交互子組件、結(jié)構(gòu)表交互子組件、采集數(shù)據(jù)交互子組件以及程序更新交互子組件; 所述用戶數(shù)據(jù)交互子組件,用于接收網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)并輸出返回值; 所述結(jié)構(gòu)表交互子組件,用于向所述結(jié)構(gòu)表子組件傳輸數(shù)據(jù); 所述采集數(shù)據(jù)交互子組件,用于接收采集數(shù)據(jù); 所述程序更新交互子組件,用于傳遞程序更新數(shù)據(jù)。
6.根據(jù)權(quán)利要求1 5任一所述的用于構(gòu)建戶外數(shù)據(jù)采集程序的框架,其特征在于,所述基礎(chǔ)界面模塊包括用以修改所述基礎(chǔ)界面的模塊提供的基礎(chǔ)界面的第一自定義接口。
7.根據(jù)權(quán)利要求1 5任一所述的用于構(gòu)建戶外數(shù)據(jù)采集程序的框架,其特征在于,所述界面容器類還包括用以實(shí)現(xiàn)從外界讀取組件的第二自定義接口。
8.根據(jù)權(quán)利要求1 5任一所述的用于構(gòu)建戶外數(shù)據(jù)采集程序的框架,其特征在于,所述用于構(gòu)建戶外數(shù)據(jù)采集程序的框架還包括框架輔助資源; 所述框架輔助資源包括按預(yù)設(shè)格式動(dòng)態(tài)生成任務(wù)文件的任務(wù)構(gòu)建子程序、用于空間數(shù)據(jù)下載的地圖下載模塊以及用于為戶外數(shù)據(jù)采集程序提供自定義規(guī)范以及數(shù)據(jù)支持的資源文件。
9.一種戶外數(shù)據(jù)采集程序構(gòu)建方法,其特征在于,所述戶外數(shù)據(jù)采集程序構(gòu)建方法,用于權(quán)利要求1-8任一所述的用于構(gòu)建戶外數(shù)據(jù)采集程序的框架中,包括以下步驟: 步驟1:編輯應(yīng)用程序模板以構(gòu)建、編輯戶外數(shù)據(jù)采集程序基礎(chǔ)界面,繼承界面容器類的屬性完成戶外數(shù)據(jù)采集程序組織結(jié)構(gòu)的搭建; 步驟2:通過組件庫接口調(diào)用框架組件庫中的組件。
10.根據(jù)權(quán)利要求9所述的戶外數(shù)據(jù)采集程序構(gòu)建方法,其特征在于,所述戶外數(shù)據(jù)采集程序構(gòu)建方法還包括: 步驟3:根據(jù)戶外數(shù)據(jù)采集的需要通過界面容器類的第二自定義接口自定義組件; 步驟4:定義網(wǎng)絡(luò)服務(wù)子組件的檢索規(guī)范。
全文摘要
本發(fā)明公開了一種用于構(gòu)建戶外數(shù)據(jù)采集程序的框架以及程序構(gòu)建方法。所述用于構(gòu)建戶外數(shù)據(jù)采集程序的框架包括應(yīng)用程序模板以及框架組件庫;所述應(yīng)用程序模板,包括為戶外數(shù)據(jù)采集程序提供基礎(chǔ)界面的基礎(chǔ)界面模塊以及用以支撐戶外數(shù)據(jù)采集程序的基礎(chǔ)界面運(yùn)行并提供組件庫接口的容器組件類;所述框架組件庫,用以封裝數(shù)據(jù)采集方法并通過所述組件庫接口為構(gòu)建戶外數(shù)據(jù)采集程序提供組件。所述戶外數(shù)據(jù)采集程序構(gòu)建方法,使用上述用于構(gòu)建戶外數(shù)據(jù)采集程序的框架中,包括編輯應(yīng)用程序模板以構(gòu)建、編輯戶外數(shù)據(jù)采集程序基礎(chǔ)界面,繼承界面容器類的屬性完成戶外數(shù)據(jù)采集程序組織結(jié)構(gòu)的搭建的步驟以及通過組件庫接口調(diào)用框架組件庫中的組件的步驟。
文檔編號(hào)G06F9/44GK103150165SQ20131007377
公開日2013年6月12日 申請日期2013年3月7日 優(yōu)先權(quán)日2013年3月7日
發(fā)明者李林, 葉思菁, 朱德海, 姚曉闖, 張南, 黃錦, 方帥, 呼延正勇 申請人:中國農(nóng)業(yè)大學(xué)