張文金
(合肥市測繪設計研究院,安徽合肥 230061)
測繪成果管理系統(tǒng)的設計與實現(xiàn)
張文金?
(合肥市測繪設計研究院,安徽合肥 230061)
測繪成果管理系統(tǒng)是以測繪成果數(shù)據(jù)管理為核心,以生產管理、生產作業(yè)人員共同參與的綜合性交互平臺。系統(tǒng)基于.NET框架平臺開發(fā),服務器端采用最新的WCF技術,客戶端采用Extjs 3.2框架技術,最終實現(xiàn)測繪成果數(shù)據(jù)的綜合管理、網上瀏覽、批量錄入與轉移、快速檢索、屬性提取及備份恢復等功能,使測繪成果管理工作達到科學、規(guī)范、高效。
B/S;WCF;測繪成果;Extjs 3.2框架
測繪成果是國民經濟和社會發(fā)展的基礎資料,是國家基礎建設及工程規(guī)劃設計的重要依據(jù)。管理好測繪成果資料,使其接收、存儲、供應更加規(guī)范、高效和安全具有重要意義。合肥市測繪設計研究院經過五十余年的發(fā)展,特別是近幾年在基礎測繪、測繪產品的開發(fā)應用中積累了大量的數(shù)字線劃圖數(shù)據(jù)、數(shù)字柵格圖數(shù)據(jù)、影像數(shù)據(jù)、專題數(shù)據(jù)、檔案資料數(shù)據(jù)、控制資料數(shù)據(jù)、三維城市數(shù)據(jù)等寶貴的測繪成果數(shù)據(jù)資料。采用硬盤存儲、文件管理的傳統(tǒng)方式給測繪成果資料數(shù)據(jù)的安全性帶來一定隱患,同時給日常查找和利用等工作帶來了很大不便。為了解決測繪成果資料數(shù)據(jù)量大、檢索效率低下、不易保存、容易泄密、更新與維護困難等傳統(tǒng)數(shù)據(jù)成果管理模式的弊端,同時也為了滿足對于測繪成果的監(jiān)管要求,通過對數(shù)據(jù)格式、檢索方法、存儲介質等的不斷深入研究,應用計算機技術、網絡技術及數(shù)據(jù)庫技術等先進技術開發(fā)了測繪成果管理系統(tǒng),提供一套安全,高效的測繪成果管理和利用模式。
依據(jù)系統(tǒng)的設計要求以及從系統(tǒng)平臺安全性、穩(wěn)定性、用戶使用方便性等方面考慮,測繪成果管理系統(tǒng)采用B/S與C/S相結合的架構模式,基于.NET框架平臺進行開發(fā),利用Oracle11g關系型數(shù)據(jù)庫作為系統(tǒng)的數(shù)據(jù)庫管理平臺,采用SOA技術將面向測繪成果管理的不同應用與服務統(tǒng)一封裝起來,并將其通過不同的表現(xiàn)形式表現(xiàn)出來(包括ActiveX插件、WEB表現(xiàn)),實現(xiàn)多種數(shù)據(jù)和程序的調用接口,為用戶提供一個面向設計過程的、動態(tài)圖檔管理的新思路,使測繪成果管理工作達到科學、規(guī)范、高效。系統(tǒng)的總體框架如圖1所示:

圖1 系統(tǒng)總體框架圖
3.1 開發(fā)工具
系統(tǒng)基于微軟的.NET Framework3.5SP1平臺進行開發(fā),采用C#編程語言。另外,采用ADO.NET技術提供的Command、Dataset等對象,基于.NET開發(fā)平臺,建立一個快速的、穩(wěn)定的、靈活的系統(tǒng)數(shù)據(jù)庫。ADO. NET是一組用于和數(shù)據(jù)源進行交互的面向對象類庫,允許和不同類型的數(shù)據(jù)源以及數(shù)據(jù)庫進行交互,提供與數(shù)據(jù)源進行交互的相關的公共方法。
3.2 技術選型
系統(tǒng)服務器端采用WCF技術及自有的ObjectHelper數(shù)據(jù)庫操作層框架,實現(xiàn)與Oracle數(shù)據(jù)庫之間的無縫切換;系統(tǒng)客戶端采用Extjs 3.2框架技術,其兼容目前市面上絕大多數(shù)的瀏覽器,能夠實現(xiàn)華麗的用戶界面及豐富的用戶交互,文檔在線瀏覽使用了多種ActiveX插件,例如MXDraw,MultiTiffViewer,DSOFramer等。WCF是微軟基于SOA推出的.NET平臺下的框架產品,其通過暴露終結點(ENDPOINT)的方式將要實現(xiàn)的業(yè)務數(shù)據(jù)傳給調用程序。Extjs 3.2框架是一個Ajax框架,用于在客戶端創(chuàng)建豐富多彩的web應用程序界面。
系統(tǒng)在經典的三層架構(數(shù)據(jù)訪問層、業(yè)務邏輯層、用戶顯示層)中加入一層WCF服務層,如圖2所示。在WCF服務層,可以將每種服務都封裝成一個類,實現(xiàn)對業(yè)務實體對象的操作,處理不同的用戶請求、并發(fā)布每個服務的契約,通過WCF服務層接口向用戶顯示層傳輸數(shù)據(jù)。通過該技術選型實現(xiàn)了客戶端同服務器之間的交流只進行業(yè)務數(shù)據(jù)的交換,降低系統(tǒng)組件間的耦合度,復用度高、通訊量小、運行速度快,同時能夠秉承富客戶端的思想,采用異步通訊技術,操作方便,交互豐富。

圖2 系統(tǒng)技術選型圖
4.1 功能設計
測繪成果管理系統(tǒng)變落后的文件夾式管理為先進的系統(tǒng)化管理,以構建信息化測繪成果管理平臺為目標。表現(xiàn)為實現(xiàn)數(shù)據(jù)共享與信息交流,快速、完整、準確地將測繪成果數(shù)據(jù)批量錄入系統(tǒng);通過數(shù)據(jù)的各種屬性信息,圖形數(shù)據(jù)高效地查詢測繪成果數(shù)據(jù);用戶管理、權限管理、操作留痕,實現(xiàn)數(shù)據(jù)安全雙保險等方面。依據(jù)系統(tǒng)建設目標要求,在系統(tǒng)功能方面進行詳細設計,具體功能模塊分類如圖3所示。

圖3 系統(tǒng)功能分類圖
4.2 功能開發(fā)
系統(tǒng)在開發(fā)方面,采用基于WCF服務的應用程序架構,通過訪問WCF對外提供的可調用接口獲取各類相關服務,服務接口通過ServiceContract(服務契約)生成URL地址,在客戶端應用程序上通過Proxy(代理)訪問服務端點的機制進行調用。本文以提供數(shù)據(jù)訪問服務為例闡明其實現(xiàn)步驟:對于需要提供的數(shù)據(jù)訪問服務,根據(jù)系統(tǒng)應用需求暴露數(shù)據(jù)庫的訪問層,可以針對每個表單發(fā)布服務,也可以對多表發(fā)布服務,客戶端訪問服務獲取數(shù)據(jù)后,自行處理以得到符合相關業(yè)務的數(shù)據(jù),并與界面層進行綁定。
(1)服務器端實現(xiàn)
服務器端實現(xiàn)步驟主要分為服務契約定義、實現(xiàn)宿主程序承載服務及制定地址和綁定三大步驟,以下為服務契約定義實現(xiàn)內容。
在WCF服務接口文件中定義服務契約、操作契約、數(shù)據(jù)契約,從而設定WCF對外提供的服務以及操作。
namespace DALService
{ [ServiceContract]
public interface IServiceDAL
{ [OperationContract]
ArrayList DatatableInfoFind(string type,string id);
}
public class ServiceDAL:IServiceDAL
{ Public ArrayList DatatableInfoFind(string type,string id)
{ //具體實現(xiàn)
…………………….}
}
}
(2)客戶端實現(xiàn)
在客戶端方面,使用Extjs 3.2框架技術進行調用WCF服務。客戶端在配置文件的結點中配置服務端發(fā)布服務的地址、結點名稱、綁定和協(xié)議等,生成代理變量訪問服務,實現(xiàn)與服務器的通信。
4.3 功能實現(xiàn)
系統(tǒng)在功能實現(xiàn)方面,采用先進的管理理念,真正意義上實現(xiàn)測繪成果資料的系統(tǒng)化、科學化、信息化管理。系統(tǒng)對測繪成果管理實現(xiàn)兩種組織方式,一是以項目的形式組織成果資料,項目可以按照年份、月份或區(qū)域進行歸檔,對項目數(shù)據(jù)進行圖形顯示與業(yè)務流轉;二是以成果類型的方式組織成果資料,針對數(shù)據(jù)類型不一、格式多樣、屬性信息不同等情況,系統(tǒng)提供“數(shù)字線劃圖”、“數(shù)字柵格圖”、“數(shù)字正射影像圖”、“數(shù)字高程模型”、“影像數(shù)據(jù)”、“專題數(shù)據(jù)”、“檔案資料”、“控制點資料”、“三維城市數(shù)據(jù)”、“行政辦公”、“信息管理”、“統(tǒng)計圖表”等多種表類型,并支持表結構的自定義操作。用戶可以按照自己的需求,來修改表結構的內容,如:控制點資料表,系統(tǒng)能根據(jù)客戶的控制點屬性,建立一個完全對應的控制點表結構管理框架,實現(xiàn)控制點的無縫管理。同時,系統(tǒng)可方便高效地管理dwg格式、shp格式、MapGIS格式、文檔、圖片、視頻等多種格式數(shù)據(jù),實現(xiàn)數(shù)據(jù)的屬性提取、批量錄入與轉移、網上瀏覽、快速檢索、成果更新、成果目錄發(fā)布、備份恢復及系統(tǒng)分類管理等各種實用功能。
系統(tǒng)從實用性、安全性、可靠性、靈活性的角度出發(fā),在功能設計滿足用戶需求的同時,界面設計充分發(fā)揮了Extjs3.2框架的技術優(yōu)勢,以其獲得良好的用戶體驗。經過長時間測試和運行,合肥市測繪設計研究院對系統(tǒng)進行了應用,該系統(tǒng)在穩(wěn)定性、實用性、易操作性、易維護性、易擴展性、容錯性等各個性能方面均表現(xiàn)良好。測繪成果管理系統(tǒng)的運行實例界面如圖4、圖5所示。

圖4 系統(tǒng)網上瀏覽DWG數(shù)據(jù)圖

圖5 系統(tǒng)分類管理圖
測繪成果管理系統(tǒng)采用B/S與C/S相結合的架構模式,基于.NET框架平臺進行開發(fā),利用WCF服務框架技術、網絡技術、數(shù)據(jù)庫技術等先進技術,實現(xiàn)對測繪成果數(shù)據(jù)的有效管理與科學應用。系統(tǒng)根據(jù)用戶的管理現(xiàn)狀和習慣,以項目和成果類型兩種方式組織測繪成果資料。用戶可以根據(jù)日常工作要求,靈活的建立一級或多級文件管理結構,形成多級管理目錄,并可以無限級的建立子分類,同時可以對子分類目錄中的各種格式數(shù)據(jù)進行自定義表結構操作,通過自定義操作定制系統(tǒng),能夠使系統(tǒng)操作模式與用戶管理習慣完全吻合,具有良好的可擴展性、可操作性和可維護性,實現(xiàn)測繪成果數(shù)據(jù)的有效組織和管理,為用戶提供更好的用戶體驗,縮短人與計算機應用系統(tǒng)之間的距離,為測繪工作提供了極大的便利,提高了工作效率,節(jié)約了成本。
[1] 鄒俊平,余美義.工程測繪系統(tǒng)的研究[J].城市勘測,2010(6):16~18.
[2] Vince Varallo.ASP.NET3.5商用開發(fā)架構精解[M].北京:清華大學出版社,2010.
[3] 樊文有,謝靖,邵隆.MAPSUV數(shù)字測繪成果管理系統(tǒng)的設計[J].中國地質大學學報,2006,9(5):715~718.
[4] 王月霞.淺談新形勢下測繪成果檔案資料的管理[J].江西測繪,2008(3):36~37.
[5] Juval Lowy.WCF Service編程[M].南京:東南大學出版社,2007.
[6] 帥開德.測繪生產管理信息系統(tǒng)的設計與實現(xiàn)[J].測繪與空間地理信息,2009,32(4):48~50.
[7] KarliWantson,Christian Nagol.C#入門經典[M].北京:清華大學出版社,2006.
[8] Hoffman.K.VisualC#2005技術內幕[M].北京:機械工業(yè)出版社,2007.
[9] 張福浩,劉紀平,王亮等.測繪數(shù)據(jù)安全管理系統(tǒng)設計開發(fā)[J].測繪科學,2006,31(1):77~79.
[10] 張進軍,張維勇,薛來文.一種基于插件的軟件體系結構[J].合肥工業(yè)大學學報·自然科學版,2005,28(4):399~401.
Design and Realization of Surveying and M apping Production M anagement System
Zhang Wenjin
(Hefei Surveying and Mapping Institute,Hefei230061,China)
Surveying and mapping production management system is a comprehensive interactive platform which involved joint participation ofmanagers and workers.The key point of this system is about datamanagement.The development of this system is based on.NET framework,The server-side and client-side use the latest technology ofWCF and Extjs 3.2 framework,respectively.This system will ultimately achieve several functions such as integratedmanagement of the surveying and mapping data,online browsing,batch entry and transfer,fast retrieval,attribute extraction and backup recovery.Consequently,it canmake the surveying andmapping productionmanagementmore scientificmore standardized and more efficient.
browser/server;windows communication foundation;surveying and mapping production;Framework of Extjs 3.2
1672-8262(2013)05-43-03
P208.2
B
2012—12—13
張文金(1976—),男,工程師,主要從事數(shù)據(jù)管理、加工與生產工作。