版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本章内容5.1
WebGIS简介5.2WebGIS分类与特点
5.3WebGIS通信协议及规范5.4WebGIS的设计与开发5.5
分布式WebGIS技术框架5.6
WebGIS应用5.1
WebGIS简介
WebGIS是一种典型的基于Internet的网络GIS。因此WebGIS的发展是随着互联网的发展而发展起来的。互联网技术的发展对WebGIS的发展有重要的影响。互联网
大量的计算机通过网络相连互联网上的计算机是物理上连接的互联网上的计算机都通过同一种语言相互交流互联网技术所带来的影响
大众化–用户和应用技术-TCP/IP,etc.
管理–域名,IP地址商品化–Internet服务提供商,Internet商业软件,商业应用5.1
WebGIS简介WebGIS
基本概念WebGIS
的功能与作用WebGIS
应用领域WebGIS
应用前景WebGIS
基本概念通俗地讲,WebGIS是指工作在Web网上的GIS,是传统的GIS在网络上的延伸和发展,具有传统GIS的特点,可以实现空间数据的检索、查询、制图输出、编辑等GIS基本功能,同时也是Internet上地理信息发布、共享和交流协作的基础。狭义上讲,WebGIS是一种在Internet技术上发展起来的新技术,其核心是将GIS的功能嵌入到满足HTTP和TCP/IP标准的Internet应用体系中,实现Internet环境下地理信息的有效管理与处理。目前对WebGIS的定义主要有如下两种:(1)以网络为中心的GIS,它使用Internet环境,为各种GIS应用提供GIS功能(如分析功能、制图功能)和空间数据获取能力。(2)基于Internet的GIS,常称为WebGIS,主要是由于大多数客户端应用采用了WWW的协议。WebGIS
基本概念WebGIS实质基于“浏览器/服务器”这种分布式计算模式的GIS,它使得GIS的空间数据查询、分析和可视化能在WWW上进行。从WWW的任意一个节点,Internet用户可以浏览WebGIS站点中的空间数据,制作专题图,以及进行各种空间检索和分析。与传统GIS相比,WebGIS有其特殊之处,主要表现在(1)它必须是基于网络的“客户机/服务器”结构,体现为B/S模式,而传统GIS多为独立的单机系统。(2)它通过Internet来实现客户机和服务器之间的信息交换,这就意味着信息传递是全球性的,数据资源是分布的。(3)它是分布式系统,客户机和服务器可以分布在不同地点和不同的计算机平台上。5.1
WebGIS简介WebGIS
基本概念WebGIS
的功能与作用WebGIS
应用领域WebGIS
应用前景WebGIS
的功能空间数据发布空间查询检索和联机处理空间数据可视化空间模型分析服务Web资源的共享WebGIS
的作用促使传统的工作站版的GIS走向分布式,走向大众化,使GIS真正走进人们的生活、工作和学习中。空间数据的分发、获取、浏览更加方便、快捷。更加友好的、互动的可视化界面,是对传统GIS的一种革新。使空间分析无处不在,人们能够随时随地使用GIS的分析功能。将GIS与其他软件系统之间的集成变得更加容易,推动了GIS向纵深快速发展,使GIS走向企业化、社会化、大众化。5.1
WebGIS简介WebGIS
基本概念WebGIS
的功能与作用WebGIS
应用领域WebGIS
应用前景WebGIS
应用领域WebGIS
快速发展的两个重要因素技术驱动:网络技术、计算机软硬件技术、数据库技术、应用驱动WebGIS的应用领域主要包括:
--传统GIS应用领域
WebGIS可以改善传统GIS在数据共享、数据更新等方面的不足,是传统GIS有益的补充和革新。
--管理部门土地管理、交通、物流运输等行业或部门
--大众化服务领域
--辅助决策应用领域例如地理空间数据在各个测绘局里,街区的数据可能在交通管理部门,人口数据可能在公安局或者人口普查单位,还有地下综合管线等数据也都隶属于各自的管理部门,因而形成了一个个信息孤岛。通过WebGIS,可以把这些相关数据联系起来,建立起一个完善的系统,从而为政府部门提供综合信息分析和综合管理的支持,辅助政府科学决策。5.1
WebGIS简介WebGIS
基本概念WebGIS
的功能与作用WebGIS
应用领域WebGIS
应用前景WebGIS
应用前景随着WebService的兴起,一系列的服务、通信标准的制定,在网络上实现GIS互操作已成为可能。WebGIS自身将与各种先进的计算机技术相结合,例如虚拟现实技术、多媒体技术等,这将会极大地扩展WebGIS的应用和发展空间。结合GPS、移动GIS等技术的研究与实用化,WebGIS将深入到人们的日常工作与生活中。电子商务、电子政务的应用离不开空间信息,WebGIS将为其提供良好的支持。
WebGIS5.1
WebGIS简介5.2WebGIS分类与特点
5.3WebGIS通信协议及规范5.4WebGIS的设计与开发5.5
分布式WebGIS技术框架5.6
WebGIS应用5.2WebGIS分类与特点分布式处理系统
分布式计算机基于请求/应答机制简单高效
大众化
客户端
–用户,或者是用户使用的计算机.客户端使用统一的软件。例如:Web浏览器
服务器–远程计算机,WWW、MAIL、FTP服务器和
GIS服务器,通过HTTP协议和TCP/IP协议为用户提供信息交换的通道和地理信息处理功能
空间数据库–为客户的数据请求和WebGIS的各种功能处理提供空间数据
WebGIS分类
根据WebGIS服务器的组成结构和其与空间数据库关系的不同,可以把WebGIS分为以下两种:基于浏览器/服务器模式的WebGIS基于中间件技术的WebGIS
基于浏览器/服务器模式的WebGIS
WebGIS最早采用的方式,也是区别于客户/服务器模式的本质特征。它把数据库和GIS的应用逻辑分开,客户通过HTTP协议向Web服务器请求数据服务,服务器返回HTML方式描述的页面。动态(Dynamic)WebGIS(被动的WebGIS
)特点:
系统的构造简便迅速、运行效率较高
可响应不同用户的请求,实现GIS的绝大多数功能对服务器性能的要求较高,所有用户的请求最终都由GIS服务器完成,服务器负担过重,容易在服务器端形成瓶颈,进而影响整个系统的效率。
对网络性能要求较高,返回至用户的数据先在服务器生成,再通过网络回传,所以数据流量较大。BrowserWebServerHTTPApplicationExtensionCGI在服务器端使用公共网关接口(CGI)技术,由CGI程序负责处理客户请求,将请求指令发往运行于后台的GIS服务器,再将服务器返回的结果返回给用户。是一种动态地操作空间数据库并生成相应的查询结果(图形和数据)的方式.基于浏览器/服务器模式的WebGIS主动(Active)WebGIS
由服务器向客户端发送一段能运行在客户机上的程序。由该程序处理用户的一些简单请求(如地图开窗、缩放、漫游等),需要矢量数据时直接向服务器申请。由于该程序功能相对简单,对于那些复杂的客户请求(如空间分析),则仍由服务器处理,处理的结果也以矢量形式返回至客户端。优点
客户端得到的不是静态图象,而是矢量地理元素实体用户可以根据需要对这些地理元素进行查询、处理乃至更新。发送到客户端的运行程序(一般为Java程序)不需要安装,可以在客户端直接执行,兼容性好。网络中传输的数据,数据量更少,对网络的性能要求不太苛刻。网络的整体运行效率得以提高,响应速度加快。对并发用户访问的支持力度明显高于被动WebGIS,可以响应更多的用户请求软件设计工作量大基于中间件技术的WebGIS
WebGIS适时地引入了中间件技术,极大地改进了传统模式WebGIS的体系结构和系统的运行效率。客户端的请求均通过中间件处理,GIS服务器包含了由多个中间件组成的分布式的多个进程。由于存在多个中间件,中间件与中间件之间的关系比较复杂,它们可以相互调用,一个中间件的进程可能是另外中间件进程的客户(要求得到服务),同时它又可能是其他中间件进程的服务(提供服务)。中间件内的进程所访问的空间数据库也不再是单个的数据库,可能是分布式的异质、异构、多源数据库。
基于中间件技术的WebGIS是一个多浏览器/多服务器模式的复杂系统,各中间件的组织通过既定的接口实现,而用户的调用呈动态特性,即只有当接收到客户请求时才动态装载中间件并处理地理信息。
WebGIS特点基于Internet/Intranet标准分布式体系结构
空间数据本身在空间上是分布的,WebGIS采用分布式体系结构形成了客户端和服务器端相互分离、协同工作的多层分布结构,通过各种均衡策略有效平衡两者之间的处理负载。这种结构适应了空间数据分布的特征,提高了网络计算资源和存储资源的利用率。
服务范围广
WebGIS可以通过网络为更加广阔范围内的用户提供空间信息服务;WebGIS客户可以同时访问多个位于不同地方的服务器上的最新数据,而这一Internet/Intranet所特有的优势极大地方便了GIS的数据管理。平台无关
WebGIS的客户端采用的是通用浏览器成本低廉、操作简单支持地理分布存储的多源数据
WebGIS能充分利用已有的各种空间信息资源,支持地理上分布存储的多种来源和格式的空间数据,不仅有利于数据的维护和更新,而且有利于平衡系统负载,提高存取速度。
WebGIS5.1
WebGIS简介5.2WebGIS分类与特点
5.3WebGIS通信协议及规范5.4WebGIS的设计与开发5.5
分布式WebGIS技术框架5.6
WebGIS应用5.3WebGIS通信协议及规范基于Web的通信协议和相关的规范是WebGIS信息传输与处理的基础。在Internet上使用的通信协议是一组开放性的协议集-TCP/IP协议和HTTP协议。WWW服务器是建立在TCP/IP协议上的服务程序,HTTP协议提供了WebGIS运行的基本功能,是实现客户端与服务器交互的基础。TCP/IP协议规范了Internet上所有计算机之间的数据传输格式和传送方式。该协议集的核心是IP(InternetProtocol)协议和TCP(TransmissionControlProtocol)协议。
TCP/IP协议IP层接收由更低层(网络接口层)发来的数据包,并把该数据包发送到更高层TCP或UDP层;相反,IP层也把从TCP或UDP层接收来的数据包传送到更低层。IP数据包是不可靠的,因为IP并没有做任何事情来确认数据包是按顺序发送的或者没有被破坏。IP数据包中含有发送它的主机的地址(源地址)和接收它的主机的地址(目的地址)。
TCP
如果IP数据包中有已经封好的TCP数据包,那么IP将把它们向‘上’传送到TCP层。TCP将包排序并进行错误检查,同时实现虚电路间的连接。TCP数据包中包括序号和确认,所以未按照顺序收到的包可以被排序,而损坏的包可以被重传。
TCP将它的信息送到更高层的应用程序,例如服务程序和客户程序。应用程序轮流将信息送回TCP层,TCP层便将它们向下传送到IP层,设备驱动程序和物理介质,最后到接收方。TCP/IP协议TCP和IP在数据传输中的主要作用
--TCP对数据进行格式化,将其分成若干数据包,并标上序号和校检号。
--IP负责在数据包前添加报头,标明发送主机和接收主机的地址,然后发往相应的网络接口。
--在数据包接收端(即目的主机),TCP协议负责还原数据,并检查和处理错误,向发送主机发回“确认”,或请求重发(数据接收不正确或丢失时)。
数据从一个主机传到另一个主机是由IP负责完成的,检查数据的可靠性和完整性是由TCP负责完成的。
HTTP协议超文本传输协议(HyperTextTransferProtocol)
采用请求/应答模型实现客户机与服务器的信息通信,客户机的请求经由网络传往服务器,服务器处理该请求并产生应答。客户机的请求包含HTTP方法、URI(UniversalResourceIdentifier)以及HTTP协议版本。服务器的应答信息中包含HTTP协议版本、状态代码(StatusCode)及原因短语(ReasonPhrase)HTMLHTTP协议建立起了Web服务器和客户机的通信,被请求的数据传回至客户机后,还需经客户机解释才能供客户浏览,这种解释规范便是HTML语言。HTML并不是一种程序设计语言,而是一些代码集合,其特点是定义了各种标示符,由一些尖括号“<”、“>”括起来,放置在文本中,使浏览器根据这些标识符显示不同的信息。一个HTML文档是由一系列的元素和标签组成。<html><head> <title>myfirstpage</title></head><body> Thisismyfirsthomepage!</body></html>
XMLXML(eXtensibleMarkupLanguage)是可扩展标记语言的缩写,它是W3C为适应WWW的需要,将SGML(StandardGeneralizedMarkupLanguage)标准进行简化而成的标记语言。XML是为Web设计的一种机器可读文档的规范。作为一种可用来制定具体应用语言的元语言,XML的语言简练,具有强大的描述能力,适合网络应用。
(1)标记(Markup)Markup说明了文档中相应的字符序列,描述了文档的数据布局和逻辑结构。
(2)可扩展(Extensible)Extensible表明了XML的主要特征。XML与HTML的主要区别在于:XML侧重于描述Web页面的内容,而HTML着重于描述Web页面的显示格式。(1)标记:左尖括号(“<”)和右尖括号(“>”)之间的文本为标记。(2)元素:开始标记、结束标记以及位于二者之间的所有内容。(3)属性:一个元素的开始标记中的名称-值对。<?xmlversion=“1.0”?><employees>Listofpersonsincompany:<personname=“John”><gender>M</gender><phone>47782</phone><street>1401MainStreet</street><cityState="NC">
Anytown</city><postal-code>34829</postal-code>Onleavefor2001.</person></employees>空间数据相关标准与规范在网络上传输海量的和形式多样的空间数据,需要能支持WebGIS的数据编码与传输标准和协议。GML
地理标识语言(GeographyMarkupLanguage,GML),是专门用于表示空间和属性数据的标记语言规范,是XML在地理空间信息领域的重要应用,由OGC于1999年提出。它是以XML为基础的编码标准,得到了许多GIS软件的支持。
GML为WebGIS的空间数据编码提供了一种开放式的标准,它以OGC所倡导的地理抽象模型(TheAbstractModelofGeography)为基础,使用特征(Feature)来描述现实世界。特征由一些非空间的属性信息(Properties)和几何信息(Geometries)组成。属性内容包括名称(Name)、类型(Type)、描述(ValueDescription)等,几何信息则由点、线、面等基本几何要素组成。
GML<?xmlversion="1.0"encoding="UTF-8"?>…<Featurefid="201"featureType="school"><Description>武汉大学</Description>><PropertyName="NumFloors"type="Integer"value="3"/><PropertyName="NumStudents"type="Integer"value="987"/><Polygonname="extent"srsName="epsg:66789"><LineStringname="extent"srsName="epsg:66789"><CData>4918.88,54580.454919.04,54580.444919.08,54580.644919.24,54580.644919.25,54580.794919.77,54581.204919.53,54580.17</CData></LineString></Polygon></Feature><Feature>…</Feature>…GMLGML具有以下主要优点:(1)提供了适合网络数据传输与存储的空间信息编码方式,可以对地理空间数据进行高效编码。(2)支持对空间信息的多样化需求,既能描述空间信息,也能用于深层次的分析,具有可扩展性。(3)提供了一种易于理解的空间信息和空间关联的编码方式,并能实现空间与非空间数据在内容和表现形式上的分离,也便于空间与非空间数据的整合。(4)能方便地实现空间几何元素同其他空间或非空间元素的连结。(5)为方便应用系统之间的互操作,提供了一系列公共地理建模对象。SVG可伸缩矢量图形(ScalableVectorGraphics,SVG)是由W3C组织开发的利用XML来描述二维矢量图形的一种标准。它由图形、影像和文字三个基本部分组成,三部分之间可以任意组合运用。SVG具有以下优点:可伸缩矢量图可以保证图像的显示质量不会因为缩放而产生失真或受损。特别适合网络应用。支持交互性。灵活易用。<?xmlversion="1.0"standalone="no"?><!DOCTYPEsvgPUBLIC"-//W3C//DTDSVG1.0//EN""/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"><svgwidth="300"height="300">…<circleid=”point_1”cx=”10”cy=”10”r=”2”></circle><polylineid=”road_1”points="100200100201020010020"></polyline><pathid=”region_1”d=”M1010L1020L2020”style=”fill:black”></path><textid=”anno_1”x=”20”y=”20”>test</text>…………</svg>
GeoVRML
地理虚拟建模语言(GeoVRML)是由Web3D联盟下属的一个官方工作组制定的,以虚拟建模语言(VRML)为基础来描述地理空间数据,目的是让用户通过一个在Web浏览器安装的标准的VRML插件来浏览地理参考数据、地图以及三维地形模型。WebGIS5.1
WebGIS简介5.2WebGIS分类与特点
5.3WebGIS通信协议及规范5.4WebGIS的设计与开发5.5
分布式WebGIS技术框架5.6
WebGIS应用5.4WebGIS的设计与开发原则以软件工程原理指导系统设计、实施、测试和最终发布,做好文档和系统版本管理。根据用户的需求和软硬件平台配置以及当今各种先进的设计理念和系统结构模式综合确定WebGIS的组织结构。选择合适的数据模型和数据结构对空间数据进行描述和组织。尽量使用技术先进、经受了用户考验、维护有保证的成熟产品作为开发环境。合理均衡客户端和服务器端的负载,综合考虑两端的实际需求和处理能力。要重点考虑计算密集型、存储密集型和多用户并发访问时的负载平衡策略。建立符合业务流程的WebGIS应用分析模型,并实现在WebGIS环境下的可视化。空间数据在不断地发生变化,要考虑各种数据更新和整合策略。开发过程中要进行严密的单元测试,发布之前要在实际的Web环境下进行综合集成测试,确保系统的可靠性。通用网关接口通用网关接口(CommonGatewayInterface,CGI)是最早实现动态网页的技术,它使用户可以通过浏览器进行交互操作,并得到相应的操作结果。CGI相当于在外部应用程序与Internet/Intranet的Web网络服务器之间架设了一座桥梁,使Web服务器可以对客户端的请求作出响应。
客户端Web浏览器Web服务器CGI脚本(网关)GIS服务器客户端请求HTMLCGIHTMLCGIHTML工作流程如下:(1)Web浏览器的用户向Web服务器发出GIS相关功能的请求。(2)Web服务器接受请求,并通过CGI脚本将用户的请求传送给GIS服务器。(3)GIS服务器接受请求,进行相关的数据处理,如:放大、缩小、漫游、查询、分析等,并将运算结果返回给客户端,其中图形数据以栅格结构表示。(4)GIS服务器将处理结果通过CGI脚本、Web服务器返回给客户端浏览器。优点:功能强、资源利用率高在CGI模式中,WebGIS的各种操作均由GIS服务器完成,可以充分利用服务器端的计算与分析资源,因此具有客户端容量要求小、GIS服务器空间数据处理能力强大等特点。跨平台性好浏览器端得到的静态图象(如GIF或JPEG)对客户机没有特殊要求,同时CGI程序几乎不需要任何改动就可以移植到绝大多数操作系统上。因此这种方式的跨平台性能良好。缺点:资源竞争激烈,效率较低作为独立的外部应用程序来执行的CGI程序,与Web服务器上的其他进程之间存在着资源竞争,将使系统运行效率降低。另外,客户端的每个请求均通过网络传给GIS服务器,由GIS服务器启动新的进程,加以解释执行,而且每个请求都需要建立连接和释放连接这个过程,因此也将导致效率的降低。网络负荷重(空间数据)功能操作困难
动态网页技术动态网页(ActivePage)是运行在Web服务器上的页面,该页面内嵌有程序代码。它必须在服务器端执行,由服务器把运行结果写入HTML文件流中,并返回给客户端的浏览器。常见的动态网页技术包括:MicrosoftASP(ActiveServerPage),SunJSP(JavaServerPage),PHP(HypertextPreprocessor)等。ASP是微软公司推出的服务器端的组件,它与IIS(InternetInformationServer,网络信息服务)协同使用,可以提供方便的服务器端开发接口和脚本开发环境。通过ASP能创建和运行动态、交互和高效的页面组成的Web服务程序。ASP最重要的一个特征是能调用服务器端的组件来实现各种功能并将结果返回给客户端。ASPASP文件是什么?ASP文件和HTML文件类似ASP文件可包含文本、HTML、XML和脚本ASP文件中的脚本可在服务器上执行。ASP文件的扩展名是".asp"它如何工作?当浏览器请求某个HTML文件时,服务器会返回这个文件而当浏览器请求某个ASP文件时,IIS将这个请求传递至ASP引擎ASP引擎会逐行地读取这个文件,并执行文件中的脚本最后,ASP文件将以纯HTML的形式返回到浏览器
<HTML>
<BODY>
<TABLE>
<%CallCallme%>
</TABLE>
<%CallViewDate%>
</BODY>
</HTML>
<p><SCRIPTLANGUAGE=VBScriptRUNAT=Server>
SubCallme
Response.Write"<TR><TD>Call</TD><TD>Me</TD></TR>"
EndSub
</SCRIPT></p>
<p><SCRIPTLANGUAGE=JscriptRUNAT=Server>
functionViewDate()
{
varx
x=newDate()
Response.Write(x.toString())
}
</SCRIPT></p>动态网页技术优点能与HTML集成。利用ASP可以实现突破静态网页的一些功能限制,实现动态网页技术;易于创建,能自动编译和连接。面向对象技术,易于与ActiveX组件集成。在客户端仅需一个浏览器,无其他特殊要求。安全性和保密性较好。服务器应用程序接口模式服务器应用程序接口模式(ServerAPI)一般依附于特定的Web服务器。ServerAPI不象CGI程序可以单独运行,它运行于Web服务器的进程中,而且一旦启动,会一直处于运行状态,并不需要每次重新启动,因此其运行效率远高于CGI程序。以微软公司的ISAPI为例,它运行在Windows环境下,是微软用以扩充IIS/WWW功能及开发高效率CGI程序的接口,它分为ISA(InternetServerApplication)和ISAPIFilter两部分。ISA也可称为ISAPIDLL,可为程序开发人员提供一些扩展功能,通过在客户端URL中指定名称而激活,其功能与CGI程序的功能直接对应,使用方法和CGI也类似。ISAPIFilter则用于构造能为服务器直接调用的模块,它位于服务器和客户端之间,对其间的通信进行预处理和后处理,例如加解密、用户身份验证、自定义日志记录等。
服务器应用程序接口模式其工作流程如下:Web浏览器的用户向Web服务器发出URL请求。该请求经由ISAPIFilter传输到服务器端的ISAPIDLL上。ISAPIFilter将对请求进行预处理,例如用户身份验证等。由ISAPIDLL与GIS服务器交互作用得到结果信息。结果信息经由Web服务器和ISAPIFilter传输到浏览器。图5-2基于ISAPI模式的WebGIS体系结构客户端Web浏览器ISAPIFilterGIS服务器URL请求与响应Web服务器(IIS/Web)ISAPIDLL服务器应用程序接口模式优点运行效率比CGI更高ISAPI运行的是进程而不是可执行程序,并且一旦启动,总是处于运行状态,因此对请求的反应更加及时。安全可靠传输ISAPIFilter的过滤机制使得请求和结果的传输更加安全、可靠。缺点ISAPIDLL与服务器密切相关,程序可移植性差。受限于ISAPIDLLWebGIS的所有服务的实现均依赖于ISAPIDLL,一旦其失效或出现故障,则WebGIS服务器不能正常工作。系统维护复杂对于每个请求,ISAPIDLL都要为其产生一个独立线程,多个线程共存导致系统运行的性能不高,也使得系统的维护更加复杂。插件技术
普通的Web浏览器所提供的功能十分有限,基本上仅限于浏览和导航,缺乏空间数据处理能力。对浏览器功能进行扩展,使其支持空间数据处理是WebGIS的一种重要实现技术。这需要在普通的Web浏览器上安装能与网络浏览器交换信息、并能执行的GIS软件。
GISPlug-in是在浏览器上扩充Web浏览器的可执行的GIS软件。GISPlug-in的主要作用是使Web浏览器支持处理无缝GIS数据,并为Web浏览器与GIS数据之间的通讯提供条件。GISPlug-in直接处理来自服务器的GIS矢量数据。同时,GISPlug-in可以生成自己的数据,以供Web浏览器或其它Plug-in显示使用。Plug-in必须安装在客户机,然后才能使用。插件技术其工作流程如下:客户端的Web浏览器向Web服务器发出数据请求。Web服务器对用户请求进行处理,将用户所需要的GIS数据传给Web浏览器。客户端对接收的GIS数据类型进行分析和理解,如不需要GISPlug-in,则直接显示,如需要GISPlug-in的支持,则转往下一步。在浏览器中搜索相关的GISPlug-in,若有则直接调用并显示GIS数据;若没有,则从服务器或网络上下载并安装相应的GISPlug-in,并将其加载到客户端以显示GIS数据。GIS数据请求GIS数据文件加载Plug-in客户端没有相关的Plug-in,客户端(Web浏览器)不支持的数据类型查询Plug-in程序GIS数据显示客户端有Plug-in服务器端(Web服务器)(GIS服务器)GISPlug-inPlug-in方式的优点:客户端处理能力强,GISPlug-in极大地增强了浏览器的空间数据处理能力,使空间数据的获取更加容易。Web服务器与网络的负荷较轻,Web服务器的空间数据处理任务减轻,网络传输的负担也得以减轻,并可使服务器为更多的用户提供服务。支持多种GIS数据,客户端的浏览器在不同的GISPlug-in支持下可以支持各种来源和格式的空间数据,实现与多源数据的无缝连接。速度快、效率高,大部分的GIS基本操作都是在浏览器上经由GISPlug-in完成的,与从服务器得到服务相比,等待时间减少,运行速度加快,运行效率得以提高。Plug-in方式的缺点:平台相关性对于同一类型的空间数据,在不同的操作系统环境下(如UNIX、Windows等),需要有各自不同的GISPlug-in。数据相关性为了显示和处理不同来源和格式的空间数据,需要在浏览器上安装不同的GISPlug-in。这说明GISPlug-in与数据本身的关系极为密切,表现出了极大的数据相关特性。插件管理不便在客户端的浏览器上,随着应用的增多,需要安装多种插件,以适应不同类型和格式的空间数据处理需要,这将导致插件的管理复杂化,也会占据十分可观的客户端存储空间。更新困难当有新版本的插件时,系统不能自动升级,需要用户重新下载和安装。客户端功能有限ActiveX技术ActiveX是Microsoft为适应互联网而发展的标准。ActiveX是建立在OLE(ObjectLinkingandEmbedding)标准之上,为扩展MicrosoftWeb浏览器IE功能而提供的公共框架。ActiveX控件是用于完成具体任务和信息通讯的软件模块。GISActiveX控件用于处理GIS数据和完成GIS分析。ActiveX控件和Plug-in非常相似,是为了扩展Web浏览器的动态模块。所不同的是,ActiveX能被支持OLE标准的任何程序语言或应用系统所使用。相反,Plug-in只能在某一具体的浏览器中使用。GISActiveX控件与Web浏览器灵活无缝结合在一起。在通常情况下,GISActiveX控件包容在HTML代码中,并通过<OBJECT>参考标签来获取,主要用于实现WebGIS中的空间数据处理和分析功能。
ActiveX技术其工作流程如下:Web浏览器向Web服务器发出数据请求。Web服务器对接收到的请求进行处理,将所要的GIS数据传送给Web浏览器。若客户机已经安装了GISActiveX控件,则不用再下载,否则需将GISActiveX控件下载并安装到浏览器上。浏览器利用GISActiveX控件对GIS数据进行相应的处理。GIS数据请求GISActiveX以及数据文件服务器端(Web服务器)(GIS服务器)客户端(Web浏览器)GISActiveX控件(GIS的操作、分析、数据的显示等)ActiveX技术ActiveX方式的优点:具有GISPlug-in模式的所有优点GISActiveX模式的客户端处理能力强、Web服务器和网络负荷较轻、支持多种GIS数据、运行速度快。软件复用能力强GISActiveX控件可以用多种语言实现,能被任何支持OLE标准的程序语言或应用系统所使用(复用),因此比GISPlug-in模式更加灵活和方便。这也使得复用已有GIS软件的源代码成为可能,从而加快GIS软件的开发进程。ActiveX方式的缺点:平台相关不同的GIS平台须提供不同的GISActiveX控件。兼容性较差ActiveX是微软公司提出的一种规范,目前只有IE全面支持,它只能运行在Windows平台上。需要下载安全性不高JavaApplet技术GISJavaApplet是在程序运行时,从服务器下载到客户机端运行的可执行代码。GISJavaApplet是由面向对象语言Java开发的小应用程序,与Web浏览器紧密结合,以扩展Web浏览器的功能,完成GIS数据操作和GIS处理。GISJavaApplet最初为驻留在Web服务器端的可执行代码。在通常情况下,GISJavaApplet包容在HTML代码中,并通过<APPLET>参考标签来获取和引发。它能完成GIS数据解释和GIS分析功能。但是,对于处理大型的GIS分析任务(如叠置、资源分配等)的能力,无法与CGI模式相比;GIS数据的保存、分析结果的存储和网络资源的使用能力受到限制。利用Java开发WebGIS主要有两种方法。一种是利用Java仅开发客户端的GIS功能,服务器端仍采用传统开发方法或仅对现有系统进行适当改造。另一种方法是完全基于Java的WebGIS,即客户端和服务器端均采用Java技术来实现GIS的功能,是一种全新的开发方式。
JavaApplet技术GISJavaApplet模式的工作原理同GISActiveX的工作流程大体一样:Web浏览器向Web服务器发出数据请求,访问服务器端的CGI程序。Web服务器对接收到的请求进行处理,由CGI程序将运算结果传送给Web浏览器。若客户机已经安装GISJavaApplet控件,则勿需下载和传输,否则将GISJavaApplet控件自动下载并安装到浏览器上。浏览器利用GISJavaApplet控件对GIS数据进行相应的处理。GIS数据请求GISJavaApplet以及数据文件服务器端(Web服务器)(GIS服务器)(CGI程序)客户端(Web浏览器)GISJavaApplet控件(GIS的操作、分析、数据的显示等)JavaApplet方式的优点:平台无关,软件复用能力强Java程序经过编译后,生成与平台无关的字节代码(Bytecode),能在不同操作系统的Java虚拟机上被解释执行,对Web浏览器和操作系统没有任何特殊要求,保持了较好的平台独立性和较强的复用能力。动态运行GISJavaApplet是在WebGIS运行时动态地从服务器端下载的,当服务器端的GISJavaApplet更新后,客户机端总能得到及时的更新,勿需预先安装到客户端。服务器和网络传输负担轻GIS的基本功能主要由GISJavaApplet在客户端完成,服务器端只需提供GIS数据服务,网络只需一次性传输,因此服务器和网络的负荷轻。安全可靠JavaApplet方式的缺点:客户端负荷较重速度不快基于JAVA的WebGIS是在JVM上运行的,并且程序是解释执行的,代码相对冗余,导致运行效率不是很高,速度也没有其他几种方式快。分析功能有限利用Java语言虽然可以开发出基于矢量图形的WebGIS,但在空间分析与处理方面仍受到Java语言本身的一些限制,致使处理复杂的空间分析能力有限,而且在数据存储、网络资源优化等方面的能力也有限。WebGIS技术性能的定性比较
技术类别性能指标通用网关接口服务器应用程序接口动态网页技术插件技术JavaApplet技术ActiveX技术运行能力客户机端很好很好很好好好好服务器端差~好好好好很好很好网络负荷重较重较重较轻较轻较轻综合运行能力一般好好好好~很好好~很好交互能力用户界面差好好好很好很好功能支持一般好好好很好很好本地数据支持否否否是否是可移植性整个系统差很好差差好一般安全性整个系统很好很好很好一般好一般WebGIS5.1
WebGIS简介5.2WebGIS分类与特点
5.3WebGIS通信协议及规范5.4WebGIS的设计与开发5.5
分布式WebGIS技术框架5.6
WebGIS应用5.5
分布式WebGIS技术框架GIS服务器的负载较重,需要完成大量的事务性工作(如用户连接)和数据交换任务,如果并发用户(即同时向服务器提出服务申请的用户)太多则极易形成网络“瓶颈”。因此如何充分利用网络及网络中的计算资源、通信资源和存储资源,需要从WebGIS的体系结构上进一步研究。
分布式体系结构的WebGIS是指通过高速互连网把分布在不同地理位置的计算机、存储设备、路由设备、输入输出设备等连接起来形成的能够处理GIS数据、实现GIS功能的分布式结构,这种结构能将各种负载较均衡地分散到众多设备上,使系统整体性能更佳。具有分布式体系结构的WebGIS必须满足一些功能要求和技术约束。主要体现在:允许来自不同部门的用户按自己的处理习惯和操作方式与数据交互,同时也允许他们使用来自其他部门的数据。具备存储空间历史数据和属性历史数据的能力。确保数据更新的安全性。能为所有用户快速提供所需的空间数据。基于J2EE的WebGIS结构
--J2EE技术概述J2EE(Java2EnterpriseEdition)技术是SUN公司推出的一种概念模型,它提供了一种利用组件来设计、开发、装配及部署企业应用程序的方法。J2EE平台提供了多层分布式应用逻辑,这些应用逻辑按功能划分为传统的组件,各组件按其所在层分布在不同机器上。J2EE的多层企业级应用逻辑可将传统两层模式中的不同层面细分为更多的层,这使得在一个复杂的应用中能够为不同的服务提供一个独立的层。
Web浏览器JavaAppletJavaBean应用客户端
实体Bean
会话Bean
消息驱动Bean数据库和企业系统JSPJavaBean客户机客户机端Web层业务层J2EE服务器EIS层数据库服务器J2EE技术概述J2EE规范所定义的应用组件有四种:应用客户组件、EJB组件、JavaServlet和JSP组件以及Applet组件。其中,应用客户端组件和Applet分布在客户层,JavaServlet和JSP分布在Web层,EJB为业务层组件。客户层在客户端,J2EE应用程序既可以是传统方式的程序,也可以是基于Java的GUI程序,它将提供与本地应用程序相似的运行方式,并能访问中间各个层次。例如,Applet是典型的在浏览器中执行的GUI程序,为J2EE应用提供了强大而友好的用户接口。
基于J2EE的WebGIS结构Web层JSP页面或Servlet是在Web层执行的J2EEWeb层组件,主要作用是应答客户端的HTTP请求,并产生可在客户端运行的HTML页面。在Web层组件结构中,可能会包含一些JavaBean对象以处理用户的输入,并将输入发至业务层的EJB来进行处理。Web浏览器Web页面Applet和可选的JavaBean类应用程序客户端和可选的JavaBean类JavaBean类(可选)业务层JSP页面和ServletWeb层J2EE服务器J2EE技术概述业务层业务层逻辑由运行在业务层上的企业级Bean(EnterpriseBean,通常也称为EJB)承担。EJB主要负责从客户端接收数据、进行数据处理(若必要时)、并将结果存储于企业信息系统(EnterpriseInformationSystem,EIS)。企业信息系统层EIS上运行的是企业业务信息系统,负责处理企业日常的业务和企业数据的维护,并能为J2EE应用组件提供数据库连接和数据访问。EJB技术简介
SUN公司对EJB的定义是:是开发和配置基于组件的分布式商务应用程序的一种组件结构,用它开发的应用程序是可伸缩的、事务型的、多用户安全的。应用程序可能只需编写一次,却可以在支持EJB规范的任何服务器平台上进行配置与运行。EJB从技术上而言不是一种产品,而是一种技术规范,是Java中的企业应用组件技术规范,它极大地简化了基于Java语言的企业应用系统的开发和配置,提高了运行效率。EJB技术简介基于EJB的分布式计算结构由六个部分(又称为角色)组成,分别是:EJB组件开发者、应用组合者、部署者、EJB服务器提供者、EJB容器提供者和系统管理员这些角色可以由不同的开发商提供,为了保持兼容性,每个角色必须遵循Sun公司提供的EJB规范EJB技术简介EJB组件开发者EJB组件开发者(EnterpriseBeanProvider)负责完成以下工作:开发EJB组件(EJB组件被打包为EJB-jar文件)、定义EJB的Remote和Home接口、编写EJBClass、提供部署文件(DeploymentDescriptor)。应用组合者应用组合者(ApplicationAssembler)根据实际情况选择应用系统所需要的EJB组件,并将它们组合成完整的应用系统。EJB技术简介部署者部署者(Deployer)负责将EJB-jar文件部署到用户的应用系统中,并保证部署文件中声明的资源是可用的。EJB服务器提供者EJB服务器提供者(EJBServerProvider)是系统领域的专家,例如操作系统、中间件或数据库等方面的开发商。EJB技术简介EJB容器提供者EJB容器提供者(EJBContainerProvider)主要为部署好的EJB组件提供良好的运行环境,为EJB组件开发者提供一组标准、易用的API,同时负责实时监测EJB容器以及其中的EJB组件的运行状态。系统管理员系统管理员(SystemAdministrator)负责维护企业级的计算和网络环境,监测EJB组件的运行情况。5.5
分布式WebGIS技术框架J2EE(Java2EnterpriseEdition)技术是SUN公司推出的一种概念模型,它提供了一种利用组件来设计、开发、装配及部署企业应用程序的方法。J2EE平台提供了多层分布式应用逻辑,这些应用逻辑按功能划分为传统的组件,各组件按其所在层分布在不同机器上。Web浏览器JavaAppletJavaBean应用客户端
实体Bean
会话Bean
消息驱动Bean数据库和企业系统JSPJavaBean客户机客户机端Web层业务层J2EE服务器EIS层数据库服务器EJB技术定义开发和配置基于组件的分布式商务应用程序的一种组件结构,用它开发的应用程序是可伸缩的、事务型的、多用户安全的。EJB的分布式计算结构的组成EJB组件开发者、应用组合者、部署者、EJB服务器提供者、EJB容器提供者和系统管理员
EJB的可重用组件
EJB技术定义了一组可重用的组件,即EnterpriseBeans。(Beans的Home接口,可以快速定位到特定的beans)。优点:利用这些组件开发应用软件十分容易,可以像搭积木一样地来建立分布式应用程序。会话Beans一个会话Beans对应一个客户端;从某种程度上来说,一个会话Beans对于服务器来说就代表了它所在的那个客户;会话Beans的生命周期相对较短,只有当客户端保持会话的时候,会话Beans才处于激活状态。如果EJB容器产生崩溃等意外事故,那么客户端必须重新建立一个新的会话对象才能继续会话。EJB的可重用组件实体Beans通过模拟数据库中的相关数据为用户提供一种数据视图。实体Beans可以被多个客户端共享访问,它通过事务的上下文来访问或更新下层的数据,保证了数据的完整性。与会话Beans相比,实体Beans的生命周期较长,且状态是持续的;只要数据库中的数据存在,实体Beans就一直处于激活状态;JSP中引入Bean的例子<%@page
contentType="text/html;charset=GB2312"
%>
<%@
page
import="summer.firstBean"
%>
<html>
<body>
<jsp:useBean
id="mm"
class="summer.firstBean"
scope="page"/>
<%
mm.setR(100);
%>
<br>
<%=
mm.getSquare()
%><br>
<%=
mm.getZC()
%>
</body></html>
J2EE
/EJB开发模型
采用J2EE技术进行系统开发时,需要从视图、控制器和模型三个方面对系统进行设计和实现。视图视图就是用户所能感触到的系统界面,亦即Web程序中的HTML、XML与JSP页面,它的主要功能是负责处理用户看到的内容,包括动态JSP部分(处理动态网页)和HTML与XML输出(静态网页)。控制器控制器负责系统的整个逻辑,管理用户与视图之间的交互。在J2EE中,控制器的功能一般由Servlet、JavaBeans、EJB中的SessionBeans来实现。它支持视图与控制器和模型之间的相互独立,这将使得客户端应用程序的变更十分容易,并且不影响基于Web应用程序的系统功能。模型模型属于应用业务逻辑部分,用于实现企业的业务应用处理功能,主要借助于EJB强大的组件技术和企业级的管理控制来实现,系统开发人员可基于这些组件创建出可重用的业务逻辑模块。基于EJB的WebGIS结构GIS应用程序的复杂性决定了创建大型WebGIS应用程序的关键是将GIS应用程序分割为功能相对独立的多个模块(组件),这样可使WebGIS中的每个组件都负责某一特定的GIS服务功能。为提高WebGIS软件的性能,可以将这些组件分布在不同的计算机上运行,以平衡系统中机器的负载。基于EJB的WebGIS结构各层地位表示层接收用户的输入对用户的输入进行分析检查并作相应的处理显示由服务器端高层传来的运行结果业务逻辑层
由Web服务器和应用服务器构成应用服务器是一个基于J2EE的应用,以后台进程形式存在.
响应客户端的数据、影像以及查询等请求将生成的结果经Web服务器传送给客户端
基于EJB的WebGIS结构各层地位数据层为业务逻辑层提供数据服务数据维护系统的后台管理工具,通过该工具可对数据库中的需要发布的数据进行设置和配置,包括要发布矢量数据的颜色、符号等的设置负载平衡
基本方法把GIS的功能从逻辑上进行划分,然后将各个功能逻辑分布在不同的组件中完成。基于J2EE技术的WebGIS多采用软件组件技术进行设计和开发。客户端RMIEJB服务器EJB容器EJB
软件的组件模型有客户端组件模型(如JavaBeans)和服务器端组件模型(如EJB)。服务器端的组件模型EJB提供了面向事务的中间件基础设施,它支持远程客户端的数据存取。通过远程方法调用(RemoteMethodInvocation,RMI)产生一个对象(被安装在客户端),作为存取服务器对象的代理对象,服务器所处的位置对于客户机来说是透明的。
EJB容器提供了EJB赖以存在的环境,并通过EJB服务器为客户提供各种服务。EJB服务器通过一个平衡算法能找出哪个(些)服务器的负载更小,并使负载最小的服务器响应客户端请求,这使得应用服务器的负载从整体上达到基本平衡。基于.Net的WebGIS结构
--Net技术概述
“Microsoft.Net代表了一个集合、一个环境、一个可以作为平台支持下一代Internet的可编程结构”。.Net是一个集合,该集合由多种XMLWeb服务之间彼此松散耦合而形成,XMLWeb服务之间通过XML通信,协同完成特定任务。.Net的目标是为发出请求的用户提供所需的资源和服务,而不管用户在何时、何地以及使用何种设备发出请求。对于用户而言,并不需要知道他们所需要的资源和服务存于何地以及如何才能得到。应用成为可编程Web服务开放Internet通信协议(HTTP、SMTP、XML、SOAP)Web服务应用端Web服务提供端业务逻辑及Web服务操作系统服务公用Web服务模块构建服务Internet服务服务器、主机其他服务智能客户机智能浏览器智能设备.Net技术概述与其他平台相比,.Net技术平台具有下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度防火涂料行业数据分析与市场调研合同2篇
- 2025至2031年中国全腈针织帽行业投资前景及策略咨询研究报告
- 2025至2030年中国石墨碳棒数据监测研究报告
- 2025年度高效商品混凝土运输及售后服务合同样本3篇
- 2024销售岗位保密合同样本
- CRRT在急诊危重症中的应用
- 借款合同范本经典
- 2025年度商业大厦窗帘采购与专业安装服务合同3篇
- 父子房屋买卖合同
- 2024铜门制安工程变更合同
- JGT266-2011 泡沫混凝土标准规范
- 2023年人教版五年级上册英语试卷
- 石碑施工方案
- 浅谈如何提高小学生计算能力讲座课件
- 配电网技术标准(施工验收分册)
- 生育服务证办理承诺书
- IQC进料检验报表
- 《零基础学前端(HTML+CSS+JS)课件》
- 纪检监察知识题库―案例分析(20题)
- 机械通气治疗流程
- 建筑施工高处作业安全带系挂点图集(2023年)
评论
0/150
提交评论