学习ArcGIS_Server_心得(2)

2018-12-10 23:58

GIS Server本身包括两部分:ServerOjbectManager(SOM)和Server Object

Containers(SOCs)。通过命名可以看出,是一个SOM和一个或多个SOC,客户端发送请求到SOM,SOM将分配的资源提供给客户端,通过SOM对SOC进行调度与管理。 Web Server

Web Server包含Web应用的部署,以及Web服务,它们均使用GISServer上的服务资源。 Clients

这里所说的客户端是多样化的,可以是Web客户端、Mobile移动设备、通过HTTP连接到ArcGIS Server Internet服务或通过LAN/WAN连接到ArcGIS Server Local Services的ArcGIS桌面应用。 Data Server

包含GISServer上所发布服务的GIS资源,可以是mxd文档、geodatabase、toolbox等。 Manager and ArcCatalogadministrators

两者都可以用来将GIS资源作为服务发布,并进行管理,不同的是一个是在Web页面上管理,另一个在桌面Catalog上,在图上可以看出,它们所针对的层次有所不一样。 ArcGIS Desktop content authors

各种GIS资源需要使用各种ArcGISDesktop软件来定制,如果需要为地图服务生成缓存,可以用ArcCatalog来创建cache。

四、 ArcGIS Server开发

1、 各控件功能及联系

MapResourceManager地图资源管理控件,通过设置属性,MapResourceManager控件可以同时管理多资源,并且可以设置图层的顺序以及图像输出的透明度。

Map 用来显示一个或多个不同类型数据资源的地图图形控件。Map控件必须与MapResourceManager控件相关联并用来显示MapResourceManager中定义的地图资源,可以把多个不同类型的地图服务融合为一个地图,并且有异步刷新功能。 GeoprocessingResourceManager管理空间数据处理服务的资源管理器,一般是ArcToolbox中的ModelBuilder工具建立好空间数据的处理模型,并把空间数据处理模型发布成空间数据处理服务,连接方式只有ArcGIS Server Internet和ArcGIS Server Local两种方式。GeocodeResourceManager空间编码资源管理控件,开发人员在开发Web ADF应用程序的时候可以在网页上添加、删除、修改地理编码控件的属性。MapTips显示与之相关联的Map控件图层中鼠标光标停留位置元素的属性。 Maginifier放大镜控件,可以设置放大的倍数。

OverviewMap缩略图,也称鹰眼,把当前的地图范围画在一个小的矩形范围内,当地图的范围发生改变时,缩略图不需要整个页面的刷新而能够自动更新。

Toolbar工具和命令行的集合

Toc控件列出Map控件中的所有图层。Toc控件与Map控件相关联,打开或关闭Toc控件的图层可以控制Map控件图层的可见或不可见

ScaleBar简单的比例尺控件。

Navigation与单个Map控件相关联,提供通用的地图移动、缩放功能。

ZoomLevel能够让用户快速的地位到某一比例尺。与Map控件相关联,只是针对简历了Cache的地图服务。

MapCopyrighttext显示Map控件的版权,运行时,以文本的方式出现,单击后显示版权信息的对话框。

TaskManager在WebADF应用程序中管理各种Tasks,TaskManager控件产生树形的XML格式的数据,这种数据能够被ASP.NET的Menu、TreeView等控件导航,运行的时候,Menu、TreeView控件可以用来控制Task的显示。

EditorTask为ArcGISServer地图服务提供一套基于Web的编辑工具,可以修改、添加、删除几何元素或修改其属性。

SearchAttributesTask提供用书输入字段的属性值来查找几何元素,待查找的图层只能是MapResourceManager中的图层,查找结果由ASP.NET DataSet返回到TaskResults中。

QueryAttributesTask能够让用花确切定义一个字段的值,该控件提升了

SearchAttributesTask控件的功能,SearchAttributesTask找到的时候使用的关系操作符是like,而QueryAttributesTask字段可以是“=”、“>”、“like”等操作符,查询的结果与 SearchAttributesTask相似。

GeoprocessingTask利用GeoprocessingResourceManager控件数据处理服务来执行空间处理服务,GeoprocessingTask控件根据用户的输入参数来执行控件处理,并吧处理结果显示在TaskResults中。

FindAddressTask利用GeoprocessingResourceManager中地理编码来执行地理编码炒作,地理编码是把一个地址描述转变为地图的x、y坐标。FindAdressTask控件把用户输入的地址描述匹配到地址库中,以DataSet显示在TaskTesults中。

FindPlaceTask利用提供的地名搜索ArcWeb Services,FindPlaceTask控件包含一个文本框用来输入地名,结果以DataSet显示在TaskResults中,必须使用ArcWeb Services的账号。

PrintTask打印地图的控件。

TaskResults用来显示其他Task操作的结果,以DataSet形成存储,以TreeView形式显示,提供异步刷新的放大、平移以及高亮显示选中的对象,也可以在结果集删除选择的对象。

FloatingPanel允许用户拖动,可以浮动在页面上。

ContextMenu允许用户与WebADF应用程序在运行的时候进行交互,可以包含一个或几个菜单项,每个菜单项可以执行客户端或服务器端的代码。

DocExtender使Web控件停泊在Map控件上面,继承于ASP.NET Ajax Control Toolkit库中的ExtenderControlBase。

HoverExpandExtender通过两种行为提高Web目标king见的可用性,一,当鼠标停留在控件上时,使目标控件的透明行发生改变;二,单击小图片可以折叠或展开控件。 ColorPiicker颜色选择起,修改控件或图形的颜色,与Map等控件相关联实现异步刷新。

2、 Ajax知识

现在越来越多的桌面应用转向Web平台,而人们也一直希望日益丰富的Web应用能够做到简单易用、高效并具有良好的交互性能。随着Google推出Google Maps、GMail等一系列服务让人们看到了曙光,感受到一种全新的Web使用体验。这种体验的显著特点就是无需下载、安装,操作响应速度快,具有良好的互动性,尤其是再也没有出现以往那种在等待返回结果期间由于浏览器刷新而造成的白屏现象。

这种令人欣喜的体验源自服务中所采用的Ajax方法。Ajax(Asynchronous JavaScript + XML)并不是一种新的技术。正如它的名字所表现的那样,Ajax是由几种蓬勃发展的技术以新的方式组合而成:使用XMLHttpRequest进行异步数据传输;利用XML和XSLT技术进行数据的交换与处理;以XHTML和CSS作为显示标准,通过DOM实现动态显示和交互;而这一切都通过JavaScript串联衔接起来。正是这些传统技术看似简单的重组却给Web应用开发带来新的活力。 传统客户端分析

经过多年的发展,WebGIS的系统架构已趋于成熟稳定,通常采用三层B/S

(Browser/Server)结构,即由浏览器、GIS应用服务器、空间数据库等三部分构成。其中,浏览器对应于传统C/S(Client/Server)结构中的客户端。

客户端是联系用户与GIS服务的桥梁,作用重大,但先天受制于浏览器,后天则深受系统所采用开发技术的影响。初期的WebGIS采用CGI方式,交互操作完全依赖浏览器处理,用户体验很差,经常遇到白屏状况。研究人员随即引入Plug-In技术扩展浏览器的GIS 功能,但收效并不显著。而随着Java、DCOM等技术的大规模应用,主流GIS厂商纷纷采用Applet、ActiveX等技术开发客户端。它们嵌入网页运行,功能较强,但与服务端耦合度高,初次使

用前还要下载并安装相应程序。不同之处在于:Applet可以跨平台运行,前提是有Java运行环境的支持;而ActiveX只适用于Windows平台,安装时还需安全认证与注册。这些额外的要求对普通用户是种负担。因而,除Applet与ActiveX外,ArcIMS等商业WebGIS软件同时提供了基于JavaScript和DHTML等技术的客户端实现。虽然简便,但效果不甚理想,用户常陷入等待之中。

此外,WebGIS所采用的空间数据传输模式对客户端的开发也有较大影响,一直存在着矢栅数据之争。地图可在服务器端完成处理与绘制,以JPG等图像形式通过HTTP协议传输给客户端。这种栅格地图是静态的,缺乏交互性,传输占用网络带宽大,但可直接通过浏览器查看,客户端功能因而比较简单而对服务器的要求高。相关工作也可部分移至客户端完成,Applet和ActiveX方式中常采用。矢量数据通常基于TCP/IP协议传输,由于数据量相对较小,所以速度快。这种客户端在本地绘制地图,可以实现即时互动,甚至完成一些较复杂的分析工作。权衡利弊,开发人员不得不在客户端和服务端之间进行平衡,或采用胖客户端模式,或是瘦客户端模式,抑或是混合模式。

随着OGC(Open GIS Consortium)共享标准的出台与不断完善,WebGIS逐步向着信息共享的方向发展:矢量数据统一采用GML作为交换格式,可以和栅格数据一样通过HTTP协议进行传输;所提供的服务也逐步细化、标准化。只要遵循OGC各类服务规范即可在异构环境下完成相关空间数据处理任务,降低了服务端与客户端的耦合度。这些变化对基于浏览器的客户端提出了新的要求,同时也带了机遇。 Ajax模型

传统Web应用模型的运行流程为:用户的操作触发提交给Web服务器的HTTP请求,服务器接到请求后执行相应操作,然后返回一个HTML页面给客户端。这个过程不断重复直到用户退出。整个过程是同步的,前一步结束才能进入下一环节,因而导致用户在发出请求后,得到返回结果前的这段时间里一直处于等待状态。浏览器同样因为等待而无法响应用户的进一步操作,并由于页面刷新引发白屏现象。

Ajax模型与传统模型的不同之处在于服务应答的异步性(图1)。这是通过在客户端与服务端之间引入一个中间层——Ajax引擎(Ajax Engine)实现的。Ajax引擎将客户端的页面剥离为数据层、控制层和表现层:浏览器中的各类数据被组织成一棵DOM树;针对操作触


学习ArcGIS_Server_心得(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:结核病防治试卷(含答案)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: