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