Ajax在WebGIS中的应用
- 格式:pdf
- 大小:379.03 KB
- 文档页数:4
webgis面试题WebGIS(Web Geographic Information System)是一种基于Web平台的地理信息系统,通过将地理信息与互联网相结合,为用户提供在线地图浏览、数据查询、分析和管理等功能。
对于从事WebGIS开发和设计的人员来说,面试是获取工作机会的重要环节。
下面是一些常见的WebGIS面试题,帮助您更好地准备面试。
1. 什么是WebGIS?WebGIS是一种基于Web平台的地理信息系统,通过利用互联网技术,实现地理空间信息的存储、分析和共享,提供给用户在线地图浏览、数据查询与分析等功能。
2. WebGIS的优势有哪些?WebGIS具有以下优势:- 方便易用:用户可以通过浏览器直接访问WebGIS,无需安装额外的软件。
- 实时共享:地理数据可以实时更新和共享,多人协同工作更加便捷。
- 空间分析:WebGIS能够进行地理数据的空间分析和模型建立,帮助用户更好地理解和分析地理现象。
- 可视化展示:通过WebGIS,地理数据可以以图形化的方式展示,增强了用户对数据的理解和应用。
3. WebGIS的核心技术有哪些?WebGIS的核心技术包括:- 地图服务(Map Service):地图服务是WebGIS中最基本的服务,通过提供标准的地图切片或动态地图的方式,将地理信息可视化在Web上。
- 空间数据库(Spatial Database):用于存储和管理地理空间数据,并支持空间查询和分析等功能。
- 地理信息系统标准(GIS Standards):WebGIS需要遵循一系列的地理信息系统标准,如WMS、WFS和WCS等,以实现地理数据的互操作性和共享性。
4. 请解释一下WMS和WFS是什么?- WMS(Web Map Service):WMS是一种通过Web传输地图图像的服务,允许用户在Web上浏览地图,并具备基本的地图查询和打印功能。
- WFS(Web Feature Service):WFS是一种通过Web传输地理要素数据的服务,可以实现地理要素的查询、编辑和分析等功能,支持对地理要素数据的增删改查操作。
Ajax技术在WebGIS系统中的性能优化研究作者:张天宫徐婧宋昊来源:《现代电子技术》2013年第11期摘要:为了提高WebGIS系统地图图像数据响应效率,将Ajax技术运用于WebGIS系统开发中,重点分析了基于Ajax的数据交互及方法实现,Ajax的动态数据请求在很大程度上解决了WebGIS数据显示不流畅的问题,具有广泛的应用价值。
关键词: Ajax; WebGIS;数据交互;动态数据中图分类号: TN911.7⁃34 文献标识码: A 文章编号: 1004⁃373X(2013)11⁃0162⁃030 引言WebGIS在网络和地理信息系统技术的整合中应运而生。
它改变旧方式中空间数据的采集、传输、共享和发展,成为地理信息系统一个重要的发展方向,通过超链接,WebGIS可使用户在Internet上操作GIS地图和数据,但是WebGIS的地图数据量较大,在Web上执行GIS 常遇到刷新慢,页面缓冲时间较长的情况。
针对WebGIS低响应速度和性能差的缺点,在开发WebGIS平台采用动态刷新技术,运用Ajax引擎,它可以用来缩短客户端和服务器端之间的响应时间,以减少传输网络中的数据量,并增加丰富的多媒体效果。
实行字符同步处理浏览器的WebGIS元素,异步消息发送到服务器,接收数据只更新部分内容,不需要更新整个页面。
这个新机制在很大程度上提高了WebGIS的响应效率,增强了用户体验[1]。
目前,Ajax技术以其优越性,在大数据量的Web 处理中,已成为主流技术的数据传输技术[2]。
1 相关技术分析1.1 Ajax技术Ajax核心是在JavaScript中调用一个JavaScript类XMLHttpRequest,这个类可以与Web服务器使用HTTP协议进行交互,程序不通过浏览器发出请求,而是用这个特殊的JavaScript 对象发送请求,再由这个JavaScript对象接收响应,并将响应结果用DOM编程方式挂到原来的网页上[3]。
WEBGIS技术的研究与应用GIS(地理信息系统)是一种将地理数据与空间分析技术相结合的信息技术。
随着互联网的普及和技术的不断更新,WEBGIS(基于互联网的GIS)应运而生,成为了GIS领域中的一个重要分支。
在WEBGIS中,数据不再局限于本地计算机或局域网内,而是通过互联网传输,实现在线地图、地理数据浏览和分析等功能。
WEBGIS的发展自1990年代初开始,主要的技术实现包括HTML、JavaScript、ASP(Active Server Pages)、CGI(Common Gateway Interface)和Java等。
其中,JavaScript技术和ASP技术成为了WEBGIS技术开发的主流。
在WEBGIS中,HTML起到了包括页面布局、标记和链接等方面的重要作用。
而JavaScript则是WEBGIS中最重要的组成部分之一,它可以实现动态页面和交互效果,并且可以调用GIS数据库中的地理信息数据。
ASP技术则主要用于与Web服务器进行数据交互,从而实现用户与数据的交互和数据的渲染。
近年来,WEBGIS技术的许多应用已经成为了各行各业的常规操作,其中最为典型的是应用在气象预报、环境监测、旅游规划和地图导航等领域。
在地图导航应用中,WEBGIS可以为用户提供更为准确的地理位置信息和路线指引,方便人们出行和旅游;在环境监测中,WEBGIS可以对空气质量、水质、天气等数据进行实时监测和数据分析,从而提高环保和应急处理等方面的效率和准确性。
除此之外,WEBGIS还可以应用于城市规划、资源调查、防灾减灾、农业生产等多个领域。
例如在城市规划中,WEBGIS可以将城市内部的道路、建筑和自然环境等信息融合在一起,提供一张全面的城市地图,并提供数据支持,帮助政府和市民进行城市规划和管理。
在农业生产中,WEBGIS可以根据土地类型和气候条件等不同因素,提供农业生产咨询和建议,从而提高农业生产效率和经济效益。
爱考机构-人大考研-环境学院研究生导师简介-王汶1基本资料姓名:王汶性别:男职称:副教授电子邮件:wen_wang2000@联系地址:北京市海淀区中关村大街59号中国人民大学环境学院2教育背景1994–1997,中国科学院遥感应用研究所理学博士,地图学与遥感1991–1994,北京农业大学理学硕士,应用气象1984–1988,南京气象学院理学学士,农业气象3工作经历2005-,中国人民大学环境学院副教授1997-2005,中国科学院遥感应用研究所助理研究员、副研究员1988–1994,天津市气象局助理工程师4研究兴趣与研究领域遥感与地理信息系统在水资源、大气环境、环境管理与环境评价中的应用;地理信息技术在人文与社会科学、商业上的应用;地理信息系统二次开发。
5教授课程本科教学:地理空间信息技术的管理与应用遥感概论硕士生教学:遥感原理与应用遥感、GIS、GPS实习6科研项目6.1完成项目[14]2012-2014,******遥感应用产品质量评价规范,国防科工局,课题负责人[13]2011-2014,基于不同尺度遥感数据的面积变化估算组件开发,北京市教育委员会科技成果转化与产业化项目,项目负责人[12]2010-2012,**应用系统技术方案论证(应用能力建设和效用评估),国家重大专项,课题负责人[11]2010-2013,区域大气可吸入颗粒物遥感估算组件开发,北京市教育委员会科技成果转化与产业化项目,项目负责人[10]2008-2011,环境卫星(地理空间信息)技术效益评价,环境卫星项目,课题负责人[9]2008-2009,人口地理空间信息平台与相关数据产品研发,北京市教育委员会科技成果转化与产业化项目,项目负责人[8]2007-2010,农村住宅遥感抽样技术研究,―十一五‖863计划重点课题子课题,子课题负责人[7]2007-2012,大气复合污染GIS分析研究,―十一五‖863计划重点课题子课题,子课题负责人[6]2003-2005,多用户遥感业务运行抽样技术与系统实现,―十五‖863计划课题,项目负责人[5]2001-2003,陆地地表参数的遥感反演研究,―十五‖863计划课题,子课题负责人[4]1997-2001,五省市水稻遥感估产,―九五‖国家科技攻关,课题负责人[3]1997-2000,对地观测技术农业应用试验示范(一期、二期),―九五‖863计划课题,子课题负责人[2]1992-2003,农作物类型识别与产量估算,国家重点项目子课题,主要参加人[1]1991-1995,重点产粮区主要农作物估产,―八五‖国家攻关项目,主要完成人7学术成果7.1论文[9]WenWang,HuiCheng,LiZhang,PovertyAssessmentUsingDMSP/OLSNight-timeLightSatelliteI mageryatAProvincialScaleinChina,AdvancesinSpaceResearch,2012,Vol.49,Issue8,P.1253–1264;[8]WenWang,HuijinLuo.DesignandConstructionofEnvironmentalMonitoringDataPublicSystemBa sedonWeb-GISPlatform,201018thInternationalConferenceonGeoinformatics,Geoinformatics2010 [7]孙亮,孙睿,杨世琦,王汶,陈怀亮,李小文。
基于Google Earth插件和Ajax技术的东南亚旅游资源三维WebGIS的实现作者:向光杨昆来源:《数字技术与应用》2013年第08期摘要:利用Google Earth插件及其API和Ajax技术,以4.0为平台,开发了泰国、新加坡等东南亚11国旅游资源的三维WebGIS,实现了旅游地理信息系统与3S技术、3DGIS技术和Internet的结合(3DWebGIS)。
该方法适用于某一专题的三维WebGIS的快速开发。
关键词:Google Earth Ajax 三维WebGIS中图分类号:TP311.11 文献标识码:A 文章编号:1007-9416(2013)08-0132-03随着经济的发展和人民生活水平的提高,旅游业正越来越成为带动整体经济发展的重要手段。
以空间信息处理为核心的地理信息系统(GIS)技术,因具有强大的空间信息管理、空间信息分析、空间信息查询及三维影像显示等功能[1],而成为旅游业信息化的首选平台。
近二十年来,关于旅游与地理信息系统结合的研究逐渐兴起,并形成了旅游地理信息系统(TGIS),即以旅游地理信息数据库为基础,在计算机硬软件支持下,运用系统工程和信息科学的理论和方法,综合和动态地获取、存储、管理、分析和应用旅游地理信息的计算机信息系统。
一切与旅游关联的地理信息和数据,如景点、交通、住宿、娱乐、购物、文化特征、特色及提示等都是TGIS的研究对象[2]。
旅游地理信息系统的发展趋势必然是与3S技术的结合,与3DGIS技术和虚拟现实技术(VR)的结合,与Internet的结合(WebGIS)[3]。
万红莲[4]、孙雷[5]、艾尧[6]、张世良[7]、陈赞章[8]、孙仲益[9]等都针对不同地区的旅游地理信息系统进行了设计和实现,但均没有实现3DGIS。
2005年6月,谷歌推出Google Earth,给互联网用户带来全新的感受,也给地理信息行业带来了巨大的冲击。
Google Earth作为优秀的地图平台,不仅能够提供较强的地图图像传输功能,更能提供免费的API(Appl-ication Programming Interface),用户只需加上业务代码,即可构架一个满足基本业务需要的行业地理信息系统[10]。
收稿日期:2006-08-15; 修订日期:2007-01-05基金项目:中国科学院知识创新工程重要方向项目(KZCX2-YW-313);国家自然科学基金项目(40571117)作者简介:吴运超(1980-),男,博士研究生,从事遥感应用与网络地理信息系统研究。
E-mail:YCWu66@Ajax 在WebGIS 中的应用吴运超1,2,王 汶3,1,牛 铮1,宋国君3(1.中国科学院遥感应用研究所遥感科学国家重点实验室,北京100101;2.中国科学院研究生院,北京100049;3.中国人民大学环境学院,北京100872)摘要:Google Maps 的Ajax 客户端为WebGIS 开发提供了新思路。
该文从3方面讨论了Ajax 在WebGIS 中的应用。
在原理方面,通过分析Ajax 模型和Google Maps,阐述了Ajax 方法与OGC 规范相结合的客户端模式;在实现环节,以MapBuilder 为例分析了Ajax 客户端的实现模式及功能扩展方法;在应用方面,介绍了基于GeoServer 和Map 2Builder 实现的淮河流域水环境信息网络查询原型系统实例。
关键词:Ajax;WebGIS;OGC;MapBuilder中图分类号:P208 文献标识码:A 文章编号:1672-0504(2007)02-0043-04在B/S(Browser/Server)结构的WebGIS 中,客户端既受浏览器的制约,又受系统需求、开发技术及策略的影响,表现为以下特点[1]:1)依赖性。
Web 2GIS 总是直接或间接地借助浏览器实现GIS 功能。
早期的CGI 和Plug-In 方案高度依赖浏览器特性,效果不佳;之后的Java Applet 、ActiveX 方案仅将浏览器作为宿主容器,增强了系统耦合度,功能显著增强。
即使如此,ArcIMS 等商业软件也未放弃基于JavaScript 和DHTML 等纯浏览器技术的客户端实现。
2)模式化。
WebGIS 一直存在着矢栅数据之争,这反映出不同的功能部署需求,包括胖客户端、瘦客户端及混合型3种模式。
所采用的模式不仅决定了对浏览器的依赖程度,而且深刻影响着系统性能。
3)通用性。
WebGIS 追求的是信息共享,标准化则是其能否实现的保障。
OGC [2]制定了一系列标准规范,如GML 数据规范、WMS 服务标准等。
对客户端而言就是要降低与服务器端的耦合度,可无缝集成不同来源的服务。
设计良好的WebGIS 会兼顾这3方面,达到三者的平衡。
Google Maps 采用Ajax[3]方法较好地实现了这一点,从而引起了相关研究人员的关注。
因此,本文探讨Ajax 方法和WebGIS 结合的原理以及在客户端实现中的具体应用。
1 Ajax 客户端分析1.1 Ajax 模型传统Web 应用模型的运行流程为:用户的操作触发提交给Web 服务器的HTT P 请求,服务器接到请求后执行相应操作,然后将HTML 页面返回客户端。
这个过程不断重复直到用户退出。
整个过程是同步的,前一步结束才能进入下一环节,因而导致用户在发出请求后至得到返回结果前的这段时间一直处于等待状态。
浏览器同样因为等待而无法响应用户的进一步操作,并由于页面刷新引发白屏现象。
Ajax 模型与传统模型的不同之处在于服务应答的异步性(图1),可通过在客户端与服务器端之间引入一个中间层)))Ajax 引擎(Ajax Engine)实现[3]。
Ajax 引擎将客户端的页面剥离为数据层、控制层和表现层:浏览器中的各类数据被组织成一棵DOM 树;针对操作触发的各种事件,利用JavaScript 处理DOM 数据并依据XHTML 和CSS 规范进行界面绘制。
结构明晰为异步应答奠定了基础,所有与服务器端的通讯都被集中提交给XMLHttpRequest 对象处理。
该对象封装了XML-RPC 协议,支持异步请求,相当于提供了独立用户交互线程之外与服务器端通讯的专用线程。
简言之,通过XMLH ttpRequest 可以使用JavaScript 向服务器提出请求并处理响应,而不阻塞用户。
这种异步通讯机制是Ajax 模型的核心,这种特性决定了它适用于与服务器端交互频繁、即时响应要求高的环境。
本文以IE 环境为例,说明XMLHttpRequest 的基本运用:创建XMLHttpRequest 对象request,以GET 方法向服务器提交参数url,收到回应后调用callback 函数,代码如下:r equest=new ActiveXObject(d Microsoft.XMLHTTP d );if(request!=null){第23卷 第2期2007年3月地理与地理信息科学Geography and Geo-Infor mation ScienceVol.23 No.2March 2007url=d http://localhost/q?x=1d ; request.onreadystatechange=callback; request.open (d GET d ,url,true); request.send ();}图1 传统W eb 应用模型(上)与Ajax 模型(下)的运行机制对比Fig.1 Comparison of traditional model for Webapplication s (up)and Ajax model(down)1.2 基于Ajax 和OGC 规范的客户端模式通过对客户端特性和Ajax 机制分析,发现Web 2GIS 具备采用Ajax 开发的基本特征:实时交互、频繁与服务器通讯并以GML 或图片形式传输数据。
实际上,ArcIMS 的H TML V iewer 版本已很接近A 2jax 。
它传输ArcXML 数据与图片,利用JavaScript 脚本控制操作,同时采用DHTML 技术显示地图,只缺异步传输这一关键环节。
所以,Ajax 完全可以担当WebGIS 客户端实现的重任。
在符合OGC 规范的WebGIS 中采用Ajax 实现客户端极其合适,最直接的优点就是以极自然的方式实现了空间信息共享所需的通用客户端;无需安装额外程序,仅依靠浏览器即可从网上获取空间信息,系统开发的焦点仅需集中在提高服务器端性能上。
Google Maps [4]已展现了这种场景。
Google Maps 可以看作是OGC 规范中WCS 服务(Web Coverage Service)与WFS 服务(Web FeatureService)的应用,分别提供图像与兴趣点查询服务。
地图是渲染好的、与卫星影像一样以图像形式存放在服务器端,并被切片按金字塔方式组织。
含有地理坐标的兴趣点数据则单独存放在数据库中。
在客户端,整个交互过程为:1)Ajax 引擎响应用户操作得到当前比例尺、视场范围以及鼠标所在屏幕位置;2)将屏幕坐标换算为地理坐标,以异步方式读取相关数据;3)将返回的兴趣点坐标换算为屏幕坐标,在客户端完成绘制并叠加在地图与影像上。
Google Maps 作为一种面向大众的地图发布系统应是一个好的解决方案,但对于WebGIS 应用而言远远不够。
地图在这里只是一个简单的参照系统,用户无法完成更多的空间数据处理与分析。
一个基本的WebGIS 应提供WMS 服务(Web Map Service)和WFS 服务。
WMS 允许用户以指定方式绘制地图并输出图像,主要支持G etCapabilities 、GetMap和GetFeatureInfo 3种接口调用,由GetMap 接口实现制图服务。
WFS 提供关于实体的各项检索服务,如相邻查询等。
扩展的WFS-T 服务额外支持数据编辑、更新操作。
调用OGC 服务可采用两种方式:一是把参数写成URL 形式,通过G ET 方法提交给服务器端;二是将请求命令封装成XML,以POST 方法提交。
栅格地图常采用GET 方法获取,如/wms.cgi?&VERSION=1.1.1&REQUEST =GetMap&STYLES=&LAYERS=global -mosaic&FORMAT =image/png&SRS=EPSG:4326&BBOX =73,18,135,53&width=800&height=456,表示向JPL(Jet Propulsion Laboratory)请求制图服务,采用WGS 84坐标系统,范围为北纬18b ~53b 、东经73b ~135b ,包含global -mosaic 图层的地图输出格式为png,大小为800@456。
而复杂的WFS 调用则将服务请求封装成G ML 数据流,采用POST 方法提交,返回结果用XPA TH 与XSLT 技术分离出实体的地理坐标和属性信息,最终在地图上绘制实体并以列表的形式表示属性。
整个系统的框架与运行流程如图2所示。
图2 Ajax+OGC 的客户端模式Fig.2 Clien t pattern based on Ajax and OGC2 Ajax 客户端实现目前,已有多个基于Ajax 的开源客户端问世。
本文以较为成熟的MapBuilder [5]为例,分析其实现模式并介绍如何基于该模式对MapBuilder 进行功能扩展。
2.1 MapBuilder 的实现模式MapBuilder 是一个纯JavaScript 脚本的客户端实现,运行机制与112节中的模式一致,支持WMS 和WFS-T 服务。
在具体实现上,采用模型)视图)控制器(Model-View-Controller,即MVC)模式,分别对应模型(Model)、饰件(Widget)、工具(Tool)3种类型的JavaScript 对象,实现了数据管理、信息表达和交互操作的模块化。
MVC 模式中一个重要问题就是处理好数据的组织与管理,对MapBuilder 而言就是设计一个好的页44第地理与地理信息科学 第23卷数据模型。
MapBuilder 不提供通常的点、线、面等几何对象的封装,整个数据流完全通过XML 配置与解析进行管理,其优点是标准化程度高、客户端使用简便、无需编码。
这些数据流包括系统配置、地图配置以及与服务器端交互所产生的各种GML 数据。
其中,系统配置文件按RDF 语法以Object-Property-Value 格式定义所需对象,每个对象被赋予一个能唯一标示其性质的ID,通过ID 在全局域中可直接以config.objects.id 来引用指定的对象实例。
地图配置文件则按OGC 的WMC(Web Map Context)规范定义地图所需各参数,如各图层的OGC 服务链接等。