ArcGIS Server是一個發(fā)布企業(yè)級GIS應(yīng)用程序的綜合平臺,如果想對ArcGIS Server基礎(chǔ)有更多的了解,可以先看看《
ArcGIS Server 體系結(jié)構(gòu)》、
ESRI(中國)BBS論壇和
ESRI網(wǎng)站。這里及接下來的一系列文章將主要介紹ArcGIS Server開發(fā)相關(guān)的內(nèi)容(如不加說明,后文中Server專指ArcGIS Server),由淺入深,充分利用Server的資源來構(gòu)建我們的企業(yè)級應(yīng)用,同時也可以了解Server的優(yōu)勢及不足,在實際應(yīng)用中揚長避短。
進行Server開發(fā)之前,我們首先需要了解Server開發(fā)的整體架構(gòu)。下圖(截取自官方文檔)可以看到,Server提供了一系列的應(yīng)用開發(fā)途徑,從 1到4難度逐步增加,當然功能和可定制性也越來越強,我們可以充分利用Server提供的這些資源來構(gòu)建我們的應(yīng)用。
Web應(yīng)用開發(fā) Server為Web應(yīng)用開發(fā)提供了一系列的開發(fā)方式,在visual studio 2005中可以直接使用Web Mapping Application template建立應(yīng)用,它包含了Web ADF框架,是學(xué)習(xí)Server開發(fā)的入口。對照上面的示意圖,可以這樣來理解,如果想使用各種Web控件加上少量代碼來構(gòu)建Web應(yīng)用,可以直接使用第一種途徑,這樣的應(yīng)用比較死板,讓人感覺有點想搭積木,程序員可能沒有任何成就感,好處是開發(fā)迅速,適合入門學(xué)習(xí)或做個簡單的Server演示。如果想在 Common API基礎(chǔ)上,使用各種通用的functionality,通過各種data source類型來定制Web ADF,可以使用第二種開發(fā)途徑。如果想使用Common API,并且需要通過Common API調(diào)用specific API來定制Web ADF,可以通過第三種途徑來開發(fā)。 Web Service開發(fā) Web Service是什么不用再介紹,ArcGIS提供了兩種類型的Web Service創(chuàng)建方法:GIS Web Service和Application Web Service。 GIS Web Service提供了一種將ArcGIS Server Object(Local data source)發(fā)布為ArcGIS Server Web Service(Internet data source)的ESRI標準,GIS Web Service不用于開發(fā),通常它們是用來發(fā)布信息和提供資源,ArcMap就可以直接使用GIS Web Service的資源而不用進行任何開發(fā),另外Web ADF控件和Common API也可以使用GIS Web Service資源。因為GIS Web Service基于標準web service,它可以作為傳統(tǒng)web service來使用,ArcGIS Server提供了SOAP API進行相關(guān)的開發(fā),以后的學(xué)習(xí)中會使用到。 Application Web Service是基于標準web service建立的應(yīng)用,使用一種ESRI的data source進行開發(fā)。因為web service沒有用戶接口,上圖中途徑一不適合這樣的應(yīng)用,途徑四是最適合的,因為web service可充分利用ESRI提供的各種data source specific API的所有functionality。 桌面客戶端應(yīng)用開發(fā) ESRI在桌面客戶端應(yīng)用中提供了兩種實現(xiàn)GIS功能和服務(wù)的方法:ArcGIS Engine和data source specific developer APIs,上圖中只有第四種途徑可用于桌面客戶端應(yīng)用。 ArcEngine不論是和本地GIS資源交互,還是使用遠程數(shù)據(jù)資源,都擁有豐富的控件和眾多API,但它在使用和分發(fā)之前必須進行授權(quán)注冊,而任何data source specific developer APIs都可以在桌面客戶端應(yīng)用中編程使用。 移動應(yīng)用開發(fā) 移動應(yīng)用和Web應(yīng)用、web services比較類似,但它們是為某一個特定的客戶端環(huán)境而設(shè)計,如PocketPC。Mobile ADF是為移動應(yīng)用定制的開發(fā)框架,通常使用途徑四來進行開發(fā),這樣可以充分利用ArcGIS Server Web services和SOAP API提供的功能。
在以后的實際開發(fā)過程中,我們會逐步了解上述各種開發(fā)方式,并不斷深入。 博客園鏈接:http://www.cnblogs.com/flyingis/archive/2007/08/09/849375.html