学术前沿数字城市应用系统建设关键技术—W

学术前沿数字城市应用系统建设关键技术—W WebGIS技术

随着计算机技术、网络技术、数据库技术等的发展以及应用的不断深化,GIS技术的发展呈现出新的特点和趋势,基于互联网的WebGIS就是其中之一。WebGIS除了应用于传统的国土、资源、环境等政府管理领域外,也正在促进与老百姓生活息息相关的车载导航、移动位置服务、智能交通、抢险救灾、城市设施管理、现代物流等产业的迅速发展。

Web开发技术的发展

Web开发技术的发展可以粗略划分成以下几个阶段:

(1)静态内容阶段

在这个最初的阶段,使用Web的主要是一些研究机构。Web由大量的静态HTML文档组成,其中大多是一些学术论文。Web服务器可以被看作是支持超文本的共享文件服务器。

(2)CGI程序阶段

在这个阶段,Web服务器增加了一些编程API。通过这些API编写的应用程序,可以向客户端提供一些动态变化的内容。Web服务器与应用程序之间的通信,通过CGI(CommonGatewayInterface)协议完成,应用程序被称作CGI程序。

(3)脚本语言阶段

在这个阶段,服务器端出现了ASP、PHP、JSP、ColdFusion等支持会话(Session)的脚本语言技术,浏览器端出现了JavaApplet、JavaScript等技术。使用这些技术,可以提供更加丰富的动态内容。

(4)瘦客户端应用阶段

在这个阶段,在服务器端出现了独立于Web服务器的应用服务器。同时出现了WebMVC开发模式,各种WebMVC开发框架逐渐流行,并且占据了统治地位。基于这些框架开发的Web应用,通常都是瘦客户端应用,因为它们是在服务器端生成全部的动态内容。

(5)RIA应用阶段

在这个阶段,出现了多种富互联网应用(RichInternetApplication,RIA)技术,大幅改善了Web应用的用户体验。应用最为广泛的RIA技术是DHTML和Ajax。Ajax技术支持在不刷新页面的情况下动态更新页面中的局部内容。同时诞生了大量的Web前端DHTML开发库,例如Prototype、Dojo、ExtJS、jQuery/jQueryUI等等,很多开发库都支持单页面应用(SinglePageApplication)的开发。其他的RIA技术还有Adobe公司的Flex、微软公司的Silverlight、Sun公司的JavaFX(现在为Oracle公司所有)等等。

(6)移动Web应用阶段

在这个阶段,出现了大量面向移动设备的Web应用开发技术。除了Android、iOS、WindowsPhone等操作系统平台原生的开发技术之外,基于HTML5的开发技术也变得非常流行。

从上述Web开发技术的发展过程看,Web从最初其设计者所构思的主要支持静态文档的阶段,逐渐变得越来越动态化。Web应用的交互模式,变得越来越复杂:从静态文档发展到以内容为主的门户网站、电子商务网站、搜索引擎、社交网站,再到以娱乐为主的大型多人在线游戏、手机游戏。

WebGIS发展

由于Internet技术和Web技术的成熟与大规模普及应用,GIS开始面向传统行业和广大民众,WebGIS开始出现和发展,并逐渐成为GIS应用的一种重要方式。WebGIS是将Web技术应用于GIS开发的产物,是一个交互式的、分布式的、动态的地理信息系统,是由多台主机、多个数据库和无数终端,并由客户机与服务器(HTTP服务器及应用服务器)相连接所组成的。WebGIS中,空间信息应用主要采取的是浏览器/服务器(B/S)方式。图8-1展示了GIS的网络化的发展趋势。

GIS的网络化的发展趋势

Web服务技术也一直处于发展之中。在Web服务发展的初期,XML格式化消息的第一个主要用途是应用于XML-RPC协议,其中RPC(RemoteProcedureCall)代表远程过程调用。在XML远程过程调用(XML-RPC)中,客户端发送一条特定消息,该消息中必须包括名称、运行服务的程序以及输入参数。

之后为了标准化,跨平台又产生了基于SOAP的消息通信模型。SOAP是在XML-RPC基础上,使用标准的XML描述RPC的请求信息(URI/类/方法/参数/返回值)。XML-RPC只能使用有限的数据类型种类和一些简单的数据结构,SOAP能支持更多的类型和数据结构。优点是跨语言,非常适合异步通信和针对松耦合的C/S。

但随着时间的推移和SOAP的推广情况,SOAP的一些缺陷也不断暴露。虽然SOAP使得进程间通信变得简单易用,但并不是每个厂商都愿意将自己的老系统再升级为支持SOAP,而且SOAP的解析也并不是每种语言都内置支持,比如JavaScript。为解决这些问题,HTTP协议重回开发者的视野。HTTP是世界上已经存在的一个最为开放、最为通用的应用协议,通过设计一种使用HTTP协议来完成服务端与客户端通信的方法,可以完美解决SOAP的问题。至此,表达性状态转移(RepresentationalStateTransfer,REST)应运而生。REST一般用来和SOAP做比较,它采用简单的URL方式来代替一个对象,优点是轻量,可读性较好,不需要其他类库支持,缺点是URL可能会很长,不容易解析。

WebGIS2.0

早期的WebGIS是依据当时的网络环境提出的,近年来由于Web2.0(主要包括Web服务、REST与AJAX等技术)的迅速发展,原本WebGIS中所依赖的方法与技术也不断在更新,表8-1显示了WebGIS1.0与WebGIS2.0之间的一些重要区别。

WebGIS1.0与WebGIS2.0之间的重要区别

WebGIS1.0(年以前的WebGIS技术)主要







































白癜风患者的饮食
北京白癜风专科医院电话



转载请注明:http://www.92nongye.com/txjg/204612740.html