0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

通过将Ajax技术应用到WebGIS系统中从而进行系统优化

电子设计 作者:电子设计 2018-11-16 09:10 次阅读

引言

WebGIS在网络和地理信息系统技术的整合中应运而生。它改变旧方式中空间数据的采集、传输、共享和发展,成为地理信息系统一个重要的发展方向,通过超链接,WebGIS可使用户在Internet上操作GIS地图和数据,但是WebGIS的地图数据量较大,在Web上执行GIS常遇到刷新慢,页面缓冲时间较长的情况。

针对WebGIS低响应速度和性能差的缺点,在开发WebGIS平台采用动态刷新技术,运用Ajax引擎,它可以用来缩短客户端和服务器端之间的响应时间,以减少传输网络中的数据量,并增加丰富的多媒体效果。实行字符同步处理浏览器的WebGIS元素,异步消息发送到服务器,接收数据只更新部分内容,不需要更新整个页面。这个新机制在很大程度上提高了WebGIS 的响应效率,增强了用户体验。目前,Ajax技术以其优越性,在大数据量的Web 处理中,已成为主流技术的数据传输技术。

1 相关技术分析

1.1 Ajax技术

Ajax 核心是在JavaScript 中调用一个JavaScript 类XMLHttpRequest,这个类可以与Web服务器使用HTTP协议进行交互,程序不通过浏览器发出请求,而是用这个特殊的JavaScript对象发送请求,再由这个JavaScript对象接收响应,并将响应结果用DOM 编程方式挂到原来的网页上。

传统Web 界面请求由浏览器发出请求,服务器端进行处理,然后将响应发送至客户端。而基于Ajax 的Web 请求响应采用XMLHttpRequest 发送,服务器的处理结果也由该对象来接收,在相同时间内,数据请求更频繁,数据交互次数更多。这正是Ajax 技术的优势所在。

Ajax并不是一种创新的技术,而是多种常用技术以新的方式的组合,运用Ajax技术做Web开发,最关键的是必须掌握Ajax数据交互流程及XMLHttpRequest类的属性及方法。

1.2 WebGIS系统

WebGIS系统结构主要有表示层、业务逻辑层、数据层三层。

数据层主要是存储地图数据的空间信息数据库,以及存储扩展信息的其他数据库,比如地名描述信息等;业务逻辑层主要有ArcMS和网页JSP等,地图服务软件及负责页面显示的JSP页面;表示层由WebServer,浏览器及ArcGIS Desktop构成,这层主要是将地图图像直观的显示给用户,提供用户操作的接口

WebGIS的开发,主要掌握三部分内容。掌握气泡显示,路线描红,地图无缝拼接的JavaScript代码。气泡显示是地图具体位置的直观显示,路线描红是对地图路线的直观标识,地图无缝拼接将不同块的地图数据连接起来,这都是地图界面最基本的功能,也是最重要的一部分。坐标转换,截图命名及特殊点坐标转换,这是地图的扩展功能,用于对地图的高级操作,比如根据地图坐标点计算空间距离等。网站程序部分,读取数据库,动态生成XML 文件和JavaScript 脚本,这是WebGIS 开发必不可少的内容,也是所有Web开发的公用模块。

2 Ajax 对WebGIS 系统性能提高的方法简述

分布式系统提高了WebGIS的响应效率,这是从数据资源的访问方式方面做的优化研究,而运用Ajax 技术则是对Web端与服务器端数据交互的优化。两者的共同点是提高了WebGIS 的响应效率,增强了用户体验。

2.1 基于Ajax的WebGIS数据交互

Ajax 的交互作用由Ajax Engine 来完成,它是浏览器端与服务器端的数据交互桥梁,浏览器端的数据请求由Ajax Engine 发给服务器端,服务器端的数据响应也由它发给浏览器端[4],具体数据交互图如图1所示。

通过将Ajax技术应用到WebGIS系统中从而进行系统优化

在用户端,主要由Ajax Engine、界面逻辑、数据缓存、用户界面、DOM五部分构成。其中,用户逻辑,界面逻辑,用户界面均只与Ajax Engine通信,而不直接与服务器通信。服务器端主要有Web 页面、应用逻辑及数据库,三者实现服务器的正常工作,与用户端数据通信直接交付Ajax Engine来完成。

2.2 Ajax在WebGIS中的方法实现

用Ajax 创建WebGIS 工程,概况来讲,只需要五步:新建html或者JSP页面,作为WebGIS除地图数据图像外的页面数据显示;在页面中写出创建XMLHttpRe-quest 对象的方法;写出事件响应方法,用上面创建的对象发出异步的Ajax 请求;创建Servlet 响应请求;在页面完成回调方法,处理服务器端响应,改变页面效果。

其中,创建XMLHttpRequest 对象的方法是比较重要的一步,是客户端和服务器异步通信的关键,XML-HttpRequest基本方法主要有:

abort:取消当前的HTTP 请求。

getResponseHeader:获得响应内容的HTTP头信息。

open:初始化一个HTTP 请求,指定请求方法(Get/Post)、URL、身份验证信息等。

send:发送一个HTTP 请求到服务器。

setRequestHeader:设置HTTP请求的头信息。

地图数据的传输原则是第一次登陆传输少量地图数据,但需要实现全景显示,然后根据用户的基本操作,运用Ajax 技术动态地传输余下地图数据,同时也要卸载不必要的地图数据。地图数据每次以块传送,页面地图数据的加载以图形块的方式逐次显示。具体流程图如图2所示。

通过将Ajax技术应用到WebGIS系统中从而进行系统优化

Web 页面全景显示,是给用户一张地图的直观显示,但并不代表包含所有的地图数据,根据用户在浏览器上点击的地图位置,决定加载哪一部分地图数据量,同时也要考虑用户端缓存的大小,当缓存不够时,需释放与当前请求的地图块不相关的其他地图数据。对某一块图像而言,用户的基本操作主要有放大、缩小和平移,其中只有放大不需要Ajax发送请求加载地图数据,其他两种操作均需要。

2.3 应用举例

Ajax技术提高了WebGIS系统性能,用户可以更流畅地通过WebGIS 查看地图信息,基于这种方式的应用,逐渐被人们所接受,尤其是在智能交通及物流行业,伴随着智能物流系统的提出,越来越多的车辆装载了含有WebGIS 的车载系统,用于查看地图路线,同时给服务器发送位置信息,服务器随时可以跟踪到当前车辆的具体位置,整个物流行业提供朝着智能便捷化发展。

智能交通行业,应用得更加广泛,高德地图、四维图新、凯立德导航等众多知名企业均开发了WebGIS导航系统,将导航系统置于车载终端,具有广阔的市场前景,有些汽车制造商已经将WebGIS 导航系统汽车生产作为标准配置,方便用户智能导航,WebGIS在智能交通行业的市场份额逐步提高。

3 结语

本文在分析了Ajax 技术的优点和WebGIS 系统特点之后,提出了一种基于AJAX 的WebGIS 数据交互实现方法,实验证明,该方法在很大程度上提高了WebGIS数据请求响应效率,增强了用户体验感。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Web
    Web
    +关注

    关注

    2

    文章

    1238

    浏览量

    68456
  • 服务器
    +关注

    关注

    12

    文章

    8116

    浏览量

    82509
  • 浏览器
    +关注

    关注

    1

    文章

    974

    浏览量

    34416
收藏 人收藏

    评论

    相关推荐

    在uIP协议栈实现基于AJAX和CGI的动态Web服务器

    和应用。为了满足资源有限的嵌入式系统的需要,本文采用微型TCP/IP协议栈uIP,在协议栈之上设计实现了基于CGI的动态Web服务器,并将AJAX技术应用到客户端与服务器的实时数据交互
    发表于 05-28 05:00

    汽车电子行业是电子信息技术应用到汽车所形成的新兴行业

    【导语】汽车电子行业是电子信息技术应用到汽车所形成的新兴行业。从广义上讲,汽车电子从基础元器件、电子零部件、车载电子整机、机电一体化的电子控制系统(ECU)、整车分布式电子控制
    发表于 06-26 04:20

    汽车电子行业是电子信息技术应用到汽车所形成的新兴行业

    汽车电子行业是电子信息技术应用到汽车所形成的新兴行业。从广义上讲,汽车电子从基础元器件、电子零部件、车载电子整机、机电一体化的电子控制系统(ECU)、整车分布式电子控制
    发表于 07-10 06:34

    射频识别技术应用到汽车防盗系统

    数据以达到识别目的。可用于识别高速运动物体并可同时识别多个射频卡,而且操作快捷方便,不怕油渍、灰尘污染等恶劣的环境,特别适合于实现系统的自动化且不易损坏。本文介绍的射频识别系统射频识别技术
    发表于 07-29 06:05

    嵌入式系统是怎样应用到企业中去的?

    请问嵌入式系统是怎样应用到企业中去的?
    发表于 04-27 06:18

    请问如何Swift语言应用到MCU开发

    请问如何Swift语言应用到MCU开发
    发表于 02-11 07:30

    如何人工智能应用到效能评估系统软件中去解决

    ,我们可以将其应用到效能评估系统,进一步提高效能评估的准确性和实用性。   华盛恒辉可以利用人工智能技术通过对大量数据的分析,来识别和评
    发表于 08-30 12:58

    基于XML的开放式WebGIS系统设计

    基于XML 的开放式WebGIS系统设计是解决传统WebGIS 数据共享、服务互操作问题的好方法。本文分析了基于XML 的开放式WebGIS
    发表于 05-30 10:28 17次下载

    基于数据岛及AJAX技术系统研究与实现

    在WEB 应用的背景下,针对系统可扩展性不强、开发难度大、系统耦合性等方面的不足,提出了一种基于数据岛技术AJAX、JavaScript 技术
    发表于 08-14 09:03 7次下载

    基于SuperMap IS.NET的WebGIS研究与开发

    针对目前WebGIS 系统开发的各种技术,分析其利弊,对一些关键技术进行优化组合,得出了一套以
    发表于 12-14 15:35 18次下载

    开源框架下WEBGIS的设计与实现

    针对目前WEBGIS在获取地理信息和地理数据处理相对独立,无法满足用户的需求,设计整合了基于SSH的数据系统和基于Geoserver,Openlayers的地理系统通过采用
    发表于 07-23 10:28 19次下载

    WebGIS实时监控的通用框架改进

    针对传统WEBGIS实时监控应用中的问题,引入AJAX和SVG技术进行改造,并对这两种技术WEBGIS
    发表于 05-26 16:21 24次下载
    <b class='flag-5'>WebGIS</b>实时监控的通用框架改进

    LPC2210应用到远程视频监控系统的设计

    本文为LPC2210应用到远程视频 监控系统 的设计,给出了软件设计结构。
    发表于 06-29 15:47 39次下载
    LPC2210<b class='flag-5'>应用到</b>远程视频监控<b class='flag-5'>系统</b>的设计

    基于WEBGIS技术的地址滑坡实时监测系统

    基于WEBGIS技术的地址滑坡实时监测系统
    发表于 06-30 14:48 17次下载

    如何将大模型应用到效能评估系统中去

    维度对应用数据进行评估,从而对应用的效能产生评估,进而获得量化评估应用的效能水平的总分数。 智慧华盛恒辉效能评估系统将大模型应用到效能评估系统
    的头像 发表于 09-27 16:16 280次阅读