(地图学与地理信息系统专业论文)基于ajax的webgis设计与开发.pdf_第1页
(地图学与地理信息系统专业论文)基于ajax的webgis设计与开发.pdf_第2页
(地图学与地理信息系统专业论文)基于ajax的webgis设计与开发.pdf_第3页
(地图学与地理信息系统专业论文)基于ajax的webgis设计与开发.pdf_第4页
(地图学与地理信息系统专业论文)基于ajax的webgis设计与开发.pdf_第5页
已阅读5页,还剩52页未读 继续免费阅读

(地图学与地理信息系统专业论文)基于ajax的webgis设计与开发.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

硕士学位论文 m a s t e r st h e s l s 中文摘要 随着i n t e r n e t 的发展,越来越多的桌面应用转向w e b 平台。在g i s 领域, i n t e r n e t 技术与g i s 相结合产生了w e b g i s 。w e b g i s 改变了空间数据的获取、传输、 共享和应用的方式,是g i s 未来的发展方向。当前随着技术的发展,w e b g i s 的应用 领域不断的扩展,新的实现技术也不断的出现。基于a j a x 的g o 0 9 1 em a p s 的推出 为w e b g i s 带来了新的设计模式。a j a x 可以很好满足w e b g i s 大量的即时交互、频繁 的服务器通讯以及数据传输等要求,有效的减轻服务器的负担,减少数据的传输量, 客户端不需要下载任何插件,克服了传统w e b 应用的白屏等待现象等问题。因此, 类似g o o g l em a p s 的在线地图服务大量的出现,a j a x 成为w e b g i s 的主流实现方式。 本文应用武汉市的m a p i n f o 格式地图,使用a s p n e ta j a x 作为a j a x 框架,结 合w e bs e r v i c e 建立了一个基于a j a x 的w e b g i s 平台。通过研究,本文初步得到了 一个应用a j a x 建立w e b g i s 的解决方案,提出了该模式下的w e b g i s 的实现原理、 体系结构,并且对部分功能的实现给出了示例。研究中,使用a s p n e ta j a x 开发 客户端功能,由于a s p n e ta j a x 对j a v a s c r i p t 做了大量的封装,系统针对不同的 浏览器只需要开发一套代码,极大的改善了不同浏览器间的兼容性问题。同时 a s p n e ta j a x 植根于a s p n e t2 0 ,。便于利用a s p n e t2 o 的强大功能。服务器端 使用a s p n e t2 0 开发w e bs e r v i c e 为客户端提供数据,使得数据与用户界面分离。 研究中,还尝试将m a p x t r e m e2 0 0 5 引入到w e b g i s 的地图服务器的开发,用以增强 系统的g i s 功能;将s v g 、v m l 等引入到客户端的开发,用以实现客户端的路线绘 制等功能。 关键词:局a ) ( ;m a p x t r 锄e ;w 曲g i s ;a s p n e ta j a x ;二次开发 a b s t r a c t w i t l lm ed e v e l o p m e n to ft l l eh l t e m e t ,m o r e 锄dm o r ct a b l e t o p 印p l i c a t i o n ss w i t c ht 0 t h ew r e bp l a t f 0 册i i lt h cg i sd o m a i n ,t h ec o l b i n a t i o no fi i l t e m e tt e c h n o l o g ya 1 1 dg i s h a sc a u s e dt h ee m e 玛e n c eo fw 曲g i s w 曲g i sc h a l l g c dt h ew a yo fg e o s p a t i a ld a t a a c q u i s i t i o n ,t 姗s m i s s i o n ,s h a r i n ga n d 印p l i c a t i o n ,a i l di tw i l lb et h ed i r e c t i o no fm t u r e g i sd e v e l o p m e m w i t ht l l et e c h n i c a ld e v e l o p m e n t ,m ew 7 曲g i sa r eu s e di nm o r e 锄d m o r ef i e l d s ,a i l dm o r ea n dm o r en e wt e c l l i l i q u e sa l s o 印p e a r e d g o 0 9 1 em 印sb a s e d 勾a ) ( p r o v i d e san e ww e b g i sd e s 洒p a t t e m 匀a ) ( c o u l dm e e tt h ew e b g i sr e q u i r c m e n t ,s u c h 雒t h e1 a r g en 啪b e ro fi m m e d i a t ei n t e r a c t i o n ,t i l e 仔e q u e n tc o m m u n i c a t i o nt 0s e n ,e r sa 1 1 d t h ed a t a 仃a n s m i s s i o nr e q u i r e m 髓t s i tc o u l da l s oe f r c c t i v e l yr e d u c et h eb u r d e no nm e s e n ,e ra n dm e 锄o u n to fd a t at r a n s m i s s i o n t h ec l i e n td o e sn o tn e e dt od o w n l o a da n y p l u 争i n s a j a ) 【o v e r c o m e sm 她yp r o b l 锄so fm et r a d i t i o n a lw r e b 印p l i c a t i o n ,s u c h 觞t h e w h i t e s c r e e l lw 撕t i n gp h e n o m o n t h e r e f 0 r e ,w h e na1 a 玛en u m b e ro fo n l i n em 印 s e r v i c e s ,s u c ha sg o o 哲em a p s ,a p p e a r e d ,a 】【h 硒b e c o m em em 血w a yo fb u i l d i n g w 曲g i s t h em a p i n f 0m 印o fw u l l 锄w 部u s e dt of o n na na j a xb a s e dw 曲g i sp l a t f o m u s i n gw 曲s e r v i c ea l l da s p n e ta j a x 嬲m e 匀a ) 【胁l e t l 啪u g ht h i sr e s e a r c ha l u t i o no f e s t a b l i s l l i n gaw 曲g i su s i n g 勾a ) 【w 觞o b t a i n e d ,t l l ep r i n c i p l e a 1 1 d a r c l l i t e c t u r eo ft l l i sp a t t e mw 弱p r o p o s e d ,d 锄o n s t r a t i o no fs o m eo ft h e 向n c t i o n sw e r e 百v e n h lt h er e s e a r c h ,a s p - n e ta ,a xw 弱u s e dt od e v e l o pc l i e n tm n c t i o n b e c a u s ei t h 勰m a d eam 勰s i v es e a l st oj a v a s c r i p t ,a i l do n l yo n es e to fc o d e si sn e c d e dt od i 位r e n t b r o w s e r s ,t l l ec o m p a t i b i l i 秒p r o b l 锄b e 觚e d i f r e r e n tb r o w s e 塔w a sg r e a t l yi m p r 0 v e d s i m u l t 锄e o u s l y a sp n e ta ,a xw 笛b 嬲e do na s p n e t2 0 ,s o t l l em n c t i o n so f a s p :n e t2 0c a l lb eu s e de x p e d i e n t l y a s 只n e t2 0w a su s e dt oc r e a t et h ew 曲s e i c e t 0p r 0 v i d ed a t af o rm ec l i e n t s i d e ,近o r d e r 也a td a t aa n dt h eu s e ri i l t e r f :犯ec a nb e s 印a r a t e d s o m eo t h e rt e c l l l l i q u e sw e r ea l s ou s e di nm i ss t u d y f o re x a m p l e ,m 印x t r c m e 2 0 0 5w a su s e di nt h em a p s e n ,e rd e v e l o p m e n tt oe n h a j l c et h eg i s 如n c t i o n s v m la 1 1 d s v gw 觞u s e di nt h ec l i e n td e v e l o p m e n tt or e a l i z et h ec l i e n t s1 i n ed r a w i n g 如n c t i o n s k e yw o r d s :a j a ) 【;m 印x 仃锄e ;w 曲g i s ;a s p :n e ta j a x ;s e c o n d a 巧d e v e l o p m e n t i i 硕士学位论文 m a s t r st l e s l s 华中师范大学学位论文原创性声明和使用授权说明 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下,独立进行研究工作 所取得的研究成果。除文中已经标明引用的内容外,本论文不包含任何其他个人或 集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在 文中以明确方式标明。本声明的法律结果由本人承担。 作者签名: 农壤啦 日期:年月 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权 保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借 阅。本人授权华中师范大学可以将本学位论文的全部或部分内容编入有关数据库进 行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。同时授权 中国科学技术信息研究所将本学位论文收录到中国学位论文全文数据库,并通 过网络向社会公众提供信息服务。 作糙名:辐嘭 日期:固8 年月r 日嚣媲日 日期:讲比月日 本人已经认真阅读“c a l i s 高校学位论文全文数据库发布章程 ,同意将本人的 学位论文提交“c a l i s 高校学位论文全文数据库 中全文发布,并可按“章程 中的 规定享受相关权益 作者签名: 日辄船 日 硕士学镶论文 m a s t e r st 重嚣s l s 。 研究背景和研究意义 。 研究背景 绪论 i n t e r n e t 技术的飞速发展使得越来越多的应用转向w e b 。在g i s 领域,g i s 与 i n t e r n e t 技术相结合产生了鬻e b g 王s 。w e b g 王s 已经从匡土、资源、环境等g 王s 的传 统g i s 应用领域扩展到社会生活中的车载导航、移动位置服务、城市设施管理、智 能交通、现代物流管理等领域,并且发挥着越来越大的作用n 3 。随着技术的发展, w e b g i s 的应用领域将会被继续扩展。 w e b g i s 基于b s 结构,它相对于传统c s 结构的g 王s 系统具有发布速度快、维 护方便、使用简单、建设投资少、数据来源广等优势疆稍。w e b g i s 使得互联网上的 任意节点的用户都能够随时随地的获取所需要的数据,因此w e b g i s 逐步成为了g i s 应用的主流,使得g 薹s 走向大众化珏3 。 w e b g i s 先后经历了c g i 、s e r v e r a p i 、基于p l u g i n a c t i v e x 、j a v aa p p l e t 等 实现技术矧。随着时闻的推移,更多新的餮e b 技术为霉e b g 王s 所采用。髯e b 2 0 的核 心技术之的a j a x 随着g o o g l em a p s 的推出被引入到w e b g i s 领域。g o 0 9 1 em a p s 引发了w e b g i s 开发方式的变革,自此之后主流的w e b g 王s 应用几乎都采用该方式实 现嘲。如国外的y a h o o ! 地图、微软l i v es e a r c h 地图,国内的5 l 地图、灵圈、m a p b a r 等均使用a j a x 开发哺1 。 以g o o g 王e 麓a p s 为代表在线地图服务的成功使得专业g i s 公司在其产品中添加 对a j a x 支持呻1 。如e s r i 的a r c i m s 、s u p e r m a p 的s u p e r m a pi s n e t 等现已均支持 矗j a x 的开发方式。 1 2 2 研究意义 a j a x 具有响应速度快、互动性强、客户端也无需下载安装、数据传输量小等优 点,基于a j a x 的w e b 应用能够减少数据的传输,降低服务器的负担,用户体验好 等优点,具有了某些桌面系统的特性潮。g o o g l em a p s 等的成功也证明a j a x 可以很 好的满足w e b g i s 大量实时交互、频繁服务器通讯、大量的数据传输等要求阶7 1 。 蠢前基于矗j a x 的餮e b g 主s 大多仍采用图片作为数据发布的形式。利用图片发布 硕士学饿论文 m a s 下楚s 善珏e s l s 数据主要有两种方式:图片预切割技术和图片动态生成技术溯。g o o g 王e 麓印s 、y a h o o ! 地图、微软l i v es e a r c h 地图、m a p b a r 等就是基于图片预切割技术的,而专业g i s 公司的w e b g i s 产品如a r c i m s 等则采用动态生成技术。 利用图片进行数据发布虽然使得地图数据发布和传输变得简单快捷,但常用的 g i s 功能如属性检索、空间分析等实现则较为困难阳j 3 。专业g i s 公司的w e b g i s 平 台如缸c 至潲等在添加了对轰扭x 的支持后,既能利用矗j a x 模式的优点又具有较为 强大的g i s 功能,较好的解决了这个问题旧。但是这些系统价格都较为昂贵,普通 的用户很难承受。 本研究应用a j a x 设计和开发w e b g i s 平台,能够很好的提升系统访问速度,减 轻服务器的负担,实现数据的定制发布。同时在研究中尝试应用专业g i s 公司的桌 面平台的二次开发组件开发地图服务器以增强系统的g i s 功能。因此本研究对于实 现一个功能完备价格低廉的w e b g i s 系统具有极大的理论和实践价值。 1 2 国内外研究现状 1 2 1w e b g l s 应用现状及发展趋势 餮e b g 王s 自产生以后便被大量应用于i n t e r n e t 环境下的各种与空闯位置相关信 息的发布。随着技术的发展,w e b g i s 的应用领域几乎被扩展到g i s 的各个方面。目 前霉e b g 王s 恶经被大量的应用于在资源、环境、防震减灾、城市建设、农业、交通、 旅游、通讯、电力、教育、人口、海洋以及军事等领域n 江1 。国内外对w e b g i s 的应 用有着浓厚的兴趣,并且做了大量的研究,在理论和实践上都取得丰硕的成果一一。 图卜l 展示了霄e b g i s 在国土资源管理方面的应用。 w e b g i s 的应用方向概况起来可分为两大类,一类是基于i n t e r n e t 的公共信息 服务。这类鬻e b g 王s 为公众提供交通、旅游、餐饮、娱乐、房地产、购物等与空阕 信息有关的信息心。这一类的应用在最近几年发展很快,国内外都产生了很多成功 酶应用,其中较为典型的如g g 至e 蘩印s 和鹾鑫曲笈。匿卜2 展示了g o o g 王e 溉p s 蛉 一个应用示例。 另类是i n t r a n e t 下的企业内部事务管理瞳”。如城市管网、电力线、交通线路、 安全监控等都是这类w e b g i s 的典型应用轻“。随着技术的发展,这一类的应用将会 有越来越大的市场,成为w e b g i s 应用未来的发展力向。 2 硕士学位论文 m a s t e r st h e s l s 儡i 。伍节蕙键l 。k g 纛 车湃l 啦 t 日 期嗍黪啦鹚聋懒 嗍期峨确酾瑚嬲懒 嬲湖獭确翰嘲篇麓 i 乏= :雾_ 篡嘉;鬻! 鬻瓷 篙 酾 觚: :羊幂生蕾 氟面:矗i 淼;矗: 。“:密 爰弱 捎器 嚣蕾 图卜1 浙江临海基本农田保护网络查询系统 墅里苎鼍_ 丛墅照型 g q 昭l e 鞭鬻:= = 二= 蹩! | 一 ”u 趣。r 链羞旷一幽i r 一一二:竺j 王蠲目跹 j 、 氛。学 置差 熊 i 召1 2g o o g l em a p s 地图服务 1 2 2w e b gi s 实现技术现状及发展趋势 ,直以来w e b g 工s 的实现一直存在着瘦客户端模式和胖客户端模式两种实现方 式瞳叫j 。基于a j a x 的g 。0 9 1 em a p s 巨大成功,使得胖客户端模式成为当前w e b g i s 主 3 萋纛落黼 流实现方式,a j a x 也成为w e b g i s 的主流实现技术,技术界对将a j a x 应用于w e b g i s 也有着浓厚的兴趣8 2 1 删3 。 目前,主流的w e b g i s 平台均使用a j a x 实现,国外的如g o o g l em a p s 、y a h o o ! 地 图、微软l i v es e a r c h 地图等,国内的如5 1 地图、灵图、m a p b a r 等旧。在未来的 几年,基于a j a x 的客户端实现方式将是w e b g i s 的主流。 除了a j a x 外,其他的一些w e b 应用的客户端实现技术也被应用到w e b g i s 中 陟3 。其中较为典型的当属f l a s h 。基于f l a s h 的w e b g i s 产品已经出现,并且取得 了较大的成功。如y a h o o ! 地图同时存在a j a x 、f 1 a s h 等的客户端方案,国内的m a p b a r 也建立了基于f l a s h 的客户端。 z e 矢量w e b g i s 方面,g m l ( g e o g r a p h ym a r k u pl a n g u a g e ) 、s v g ( s c a l a b l ev e c t o r g r a p h i c s ) 、l ( v e c t o rm a r k u pl a n g u a g e ) 等技术被应用的w e b g i s 中3 2 刮。g m l 、 s v g 和v m l 都是基于) ( m l 的可用来描述矢量图形的标记语言。国内外对将g m l 、s v g 和v m l 应用于w e b g i s 做了大量的研究,并取得了一定的成果。 三维w e b g i s 方面,g 0 0 9 1 e 和微软都在其w e b g i s 产品中提供了三维街景服务, 取得了较好的效果。国内的e 都市、都市圈等也提供了具有立体效果的w e b g i s 产 品。三维w e b g i s 将一直是研究的热点,未来将同样是g i s 研究的热点之一。 1 3 研究目标 本文尝试通过对g o o g l em a p s 的w e b g i s 开发模式的研究,结合w e b g i s 的理论 和实现技术,探讨w e b g i s 客户端和服务器端的实现方法,并最终利用a j a x 和g i s 桌面平台的二次开发组件开发一个a j a x 化w e b g i s 平台,从而得到造价低廉切功能 强大的w e b g i s 方案。 1 4 研究内容 本文主要研究了以下几个内容: ( 1 ) 分析了当前流行的基于a j a x 的w e b g i s 平台的技术方法和技术路线。 ( 2 ) 基于a j a x 的w e b g i s 系统中地图数据的发布的解决方案; ( 3 ) a j a x 在与服务器异步通讯的客户端中的实现方法; ( 4 ) s q ls e r v e r 在基丁a j a x 的w e b g i s 中作为空间数据库的应用方法; ( 5 ) g i s 二次开发组件在地图服务器的开发中的应用方法。 4 硕士学位论文 m a s t e r st h e s l s 2 1 a j a x 简介 2a ja x 技术基础 a j a x 是a s y n c h r o n o u sj a v a s c r i p ta n dx m l ( 异步的j a v a s c r i p t 和) ( m l ) 的简 称,它不是一项新的技术,而是很多成熟技术的集合h 沪删。“a j a x ”一词最早由著名 的用户体验专家j e s s e j a m e sg a r r e t t 在2 0 0 5 年2 月发表的一篇名为a j a x :an e w a p p r o a c ht ow e ba p p l i c a t i o n s 的文章中提出4 7 3 。a j a x 极大的发掘了w e b 浏览器 的潜力,开发了大量的新特性。基于a j a x 的w e b 应用改变了传统的w e b 应用模式, 极大的增强了用户的体验特性h 州们。因此,a j a x 自推出后迅速的成为当前最为流行 的w e b 开发技术之一。 基于a j a x 的w e b 应用具有以下几个特征h 引: ( 1 ) 一个页面即一个应用程序; ( 2 ) 基于标准技术构建: ( 3 ) 迅速、平滑、友好的服务器交互过程: ( 4 ) 充分重视用户的体验; ( 5 ) 高级u i 功能支持。 a j a x 主要由j a v a s c r i p t 、x m l h t t p r e q u e s t 、x m l ( e x t e n s i b l em a r k u pl a n g u a g e ) 、 d o m ( d o c u m e n to b j e c tm o d e l ) 、c s s ( c a s c a d i n gs t y l es h e e t ) 等技术构成静啪1 。 其中) ( m l h t t p r e q u e s t 对象是a j a x 的核心技术h 洲3 。 2 2a j a x 的w e b 应用与传统w e b 应用工作原理比较 传统w e b 应用程序,一般采用请求刷新显示模式,每个请求都由单独 的页面来显示,发送一个请求就需要重新获取该页面。 传统w e b 应用的工作流程为:用户向服务器发送一个请求:服务器接收该请求 并进行处理,处理完毕后服务器生成合适的h t m l 文档并发送到客户端;客户端将 该文档呈现出来。在服务器处理用户请求时,浏览器处于l o a d i n g 状态,用户能做 的只能是等待卜删。该流程可以用图2 1 表示。 硕士学位论文 m a s t e r st h e s l s 客户端 j 服务器端 图2 1 传统w e b 应用的工作流程3 该模式下,即使获取很少的信息,服务器也需要处理整个页面,页面中所有图 片和数据都被重新运算下载。因此网络传输量和服务器负担都将增加很多n 卜4 6 j 。 相对于传统的w e b 应用,a j a x 使得w e b 应用具有了某些桌面程序的特征,一个 w e b 页面趋向于一个单独的应用程序。w e b 页面通过j a v a s c r i p t 从服务器获取数据, 并将其更新在页面中,所有的工作都在后台完成,在服务器处理用户请求时,客户 端仍可进行其他操作h 卜删。a j a x 下的w e b 应用其实现流程如图2 2 所示。 多户堂一一一一二一- l ,_ 一- 二一一一一一一一一一一一一二一 服务器端 系统处理蕉统处理系统处理系统处理 图2 2a j a x 的w e b 应用工作流程1 a j a x 的应用与服务器一次交互的流程可以用文字描述如下h 2 | : ( 1 ) 用户在页面上执行某个操作,例如鼠标点击; ( 2 ) 根据用户的操作调用相应的j a v a s c r i p t 代码: ( 3 ) 通过该j a v a s c r i p t 代码创建x m l h t t p r e q u e s t ,并向服务器发送请求; ( 4 ) 服务器对x m l h t t p r e q u e s t 发送过来的请求进行一系列的处理,并将处理的 硕士学位论炙 m a s t e r st h s l s 结果发送回客户端; ( 5 ) 数据达到客户端后,调用相应的j 鑫v a s c r i p t 代码,改变文档的d 黼模型将 数据显示在客户端,完成一次请求过程。 由图2 一l 和图2 2 对比可见,a 扭) 【的w e b 应用相对予传统的鬻e b 应用在用户行 为和服务器端交互间多了一层a j a x 弓| 擎。该引擎负责处理用户的行为并转化为对 服务器的请求h 州3 。同时将服务器端返回的信息,经处理后呈现给用户。a j 8 x 引擎 在后台异步运行,用户无需等待服务器的处理,可以并发执行多个操作,这使得a j a x 的w e b 应用具有了某些桌面系统的特点。 2 3a j a x 相关技术简介 2 3 。1 文档对象模型d o 麓 d 删( d o c u m e n to b j e e tm o d e l ) 用来表示显示在浏览器上的整个文档对象及其 层次结构。矗j a x 中使用j a v a s c r i p t 访问文档中的所有结点。 通过对改变结点的属性或者增加、删除结点,用户可以控制页面的局部行为, 实现界西元素的动态变化,从而实现客户端的动态显示和交互。 2 3 。2 定义元素样式的e s s e s s 是c a s c a d i n gs t y l es h e e t s 的简称,在嚣e b 开发中e s s 被用来定义标记 的显示样式,实现标准的呈现界面。 2 3 。3 数据交换格式x 跹或j s o n 服务器端返回绘客户端的数据被序列化成为文本格式,通常选择x 娩缄郧铡 作为数据交换的格式。 x m l 是标准的数据表示方式,在客户端和服务器端都可以得到很好的解释。它 为跨平台、跨领域的应用提供了一种通信手段。a j a ) 【中,x 魁是客户端与服务器端 的非常规范的数据传输格式。 j s 渊是一种轻量文本格式,同潮l 一样它也是一种简单的文本标记格式,在 a s p n e ta j a x 中,它是客户端与服务器端默认的数据交换格式。j s o n 同) ( h l l 一样 也是一神简单文本格式,相对于x m l ,j s o n 传输同样的数据网络传输量更少,并且 在客户端有非常优蘸的性能。 7 硕士学位论史 m a s t r st 重e s l s 2 3 4 实现与服务器异步通讯的x m l h t t p r e q u e s t x m l h t t p r e q u e s t 早在1 9 9 8 年就已经集成在i e 中,它是a j a x 最核心的部分。 它用来帮助开发者实现客户端与服务器端的异步通讯。通过磁鹾t t p r e q u e s t 客户 端可以在任何时刻与服务器端进行通讯,丽不只是在页面提交时。同时在与服务器 通讯的同时,用户仍可以进行其他操作。 2 3 5 客户端脚本语言j a v a s c ri p t j a v a s c r i p t 是一种基于对象和事件驱动并具有安全性能的脚本语言。a j a x 中 利用j a v a s e r i p t 实现鬻e b 应用程序对用户行为的实时响应和处理,馏如鼠标事件, 页面载入、异步请求的发起和响应等。j 8 v a s c r i p t 将a j a x 中的各对象融合在一起。 8 硕士学位论炙 m a s t 嚣疑st 科e s l s 3 1w e b g l s 的基本原理 3w e b gls 简介 w e b g i s 是以互联网为环境,以w e b 页面作为g i s 软件的用户界面,将i n t e r n e t 与g i s 技术结合在一起,为各种地理信息应用提供g i s 功能的技术髓嘲。它利用互联 瓣技术扩展帮完善地理信息系统,其核心是在g 王s 中嵌入 t 肾和下c p i p 标准的应 用体系,实现互联网环境下的空间信息管理等g i s 功能。与传统的基于c s 结构的 g i s 应用系统不同,w e b g i s 基于b s ( 浏览器服务器) 结构,使用户可以i n t e r n e t 环境下应用统一的浏览器图形界面,访问不同地区、不同类型的空间信息资源,使 得地学数据和地学模型有可能在全球范围内共享晗嘲。 一般根据主要的图形属性数据所处的逻辑位置不同,将w e b g i s 划分为瘦客户 端和胖客户端两种解决方案。对于前者,空间分析和输出等g i s 功能全部由服务器 端来完成,客户端仅负责用户的请求和数据输入;对于后者,则将部分常见的g 王s 分析和数据处理工作转移到客户端,由客户端运行的程序来完成,较为复杂、高级 的操作才使用w e b g i s 服务器来实现。 。 3 。2 襄e b g l s 的实现技术 3 2 1 通用网关接翻( e g i ) 技术 c g i ( c o 嗍o ng a t e w a yi n t e r f a e e ) 郎通用网关接口技术,是最早应用于w e b g i s 开发的方法。采用c g 王技术构建驿e b g 王s ,需要g i s 服务器在瑟台运行,剥用c g 王脚 本将g i s 服务器和w e b 服务器、数据服务器连接起来,实时、动态的生成h t m l 文 件。 基予c g i 技术的鬻e b g 至s 的工作原理是:鬻e b 测览器用户发出馨r l 及g 王s 数据操 作请求;w e b 服务器接受请求,并通过c g i 脚本,将用户的请求传送给g i s 服务器; g i s 服务器接收请求,进行g i s 数据处理,将操作结果形成g i f 或j p e g 图像;最后, g 王s 服务器将g i f 或j p 瞄图像通过c g i 脚本、并e b 服务器返回给鬻e b 浏览器显示。 3 2 2 服务器端应用程序接瑟( s e r ¥e r 舶1 ) 接术 s e r ¥e r 舻羔服务器应用程序接麓技术是为了克服c g 王的效率低下丽开发出来酶 扩充的c g i 工具,其基本原理与c g i 类似,不同的是c g i 程序可以单独的运行,而 9 硕士繁住论史 m a s 下e r st h e s l s s e r v e r a p i 是w e b 服务器进程的组成部分,必须在特定的服务器上运行。s e r v e r a p i 作为一种进程内的扩充方法,进程的创建和进程间通信负载大大减少,运行速度比 e g l 程序要快的多,在一定程度土改善了餮e b 服务器的响应性能。 目前流行的s e r v e r a p i 有m i c r o s o f t 的i s a p i 、n e t s c a p e 的n s a p i 和o r e i l l y 的w s a p i 。其中i s a p i 应用最为广泛。 3 2 3 插件( p iu g i n ) 技术 插件( p l u g i n ) 是n e t s c a p e 公司发明的为了增加浏览器功能的方法。它为浏 览器提供了一套般王,方便开发商和用户根据特定应用对测览器进行扩展。露前主 流的浏览器均提供了应用程序接口。基于c g i 和s e r v e r a p i 的w e b g i s 仅提供给客 户端有限的g i s 功能,并且所有的g i s 功能均有服务器端来实现。基于插件的w e b g i s 将部分服务器上的功能转移到客户端来实现,减少了服务器的负担和网络流量。它 通过在客户端的浏览器上安装一个能识别矢量图形数据的插件。通过该插件,客户 端直接从g i s 服务器获取矢量数据,这样无需数据转换客户端就能直接通过w e b 浏 览器实现图像的浏览、查询和分析等操作,大大的加快了用户操作的反应速度。同 时矢量数据和属性数据已建立的对应、关联关系也容易保存。但是采用该技术,需 要针对特定的数据和平台开发专用的插件,客户端的浏览器需要专门安装该插件, 同时也存在版本的更新豳难以及操作大型g i s 功能有限等问题。 3 2 4a c ti v e x 控件和d c o m 组件对象模型技术 a c t i v e x 技术是麓i c r o s o f t 公司为适应互联网而发展的标准。它建立在o 乙e 技 术的基础上,为扩展测览器功能而提供的公共框架。它不是计算枧语言,恧是一个 技术标准。基于这种标准开发的构件称为a c t i v e x 控件,可以方便的嵌入到浏览器 中。 矗e 专主v e x 控俘和p 王毽g 一主n 相戗,都是扩展浏览器的动态模块。不同的是a e t i v e x 能被支持o l e 标准的任何程序语言和应用系统所使用,两p l u g i n 仅能在某一具体 的浏览器中使用。基于a c t i v e x 的w e b g i s 通过a c t i v e x 控件来完成g i s 数据的处 理和显示,它的工作原理和p 】- u g i n 方式很相似:客户端将接收到的g i s 数据通过 a c t i v e x 控件对数掇进行处理,完成g 王s 操作。因此采用矗e t 主v e x 的骥e b g 至s 具有 p l u g i n 模式的所有优点,同时a c t i v e x 能够被支持o l e 标准的语吉和应用系统所 使用,比p l u g i n 模式更灵活、方便。其缺点也和p 1 u g i n 模式很类似:需要专门 下载安装矗e 专主v e x 控件;与平台和数据格式相关;操作大型g 主s 的功能有限。 l o 3 。2 5j a v a 技才亡 j a v a 语言是s u n 公司推出的一种跨平台、适合于分布式计算环境的面向对象编 程语言,具有可移植性、安全性、动态。高性能、简单等优点,对网络上分布资源 存取的编程具有良好的支持,非常适合王n t e r n e t 与分布式数据环境。由于采用虚 拟机技术,因此j a v a 语言实现了目标代码与平台无关的特性。j a v a 语言既可以将 计算或者操作全部在服务器上实现,也可以将部分计算和操作在服务器上完成,其 他功能在客户机上运行。e l j 于j a v a 所具有的这些功能特点,使其成为实现w e b g i s 的分布式应用体系结构的理想开发语言。 利用j a v a 开发w e b g i s 系统的方法可分为两种:一种是仅客户端部分基于j a v a 的w e b g i s 系统。即仅用j a v a 语言开发客户端的g i s 功能,面服务器端在现有的系 统代码的萋础上,通过制定g 王s 空间数据传输协议以及和j a v 氇程序交互的功能模 块就可以完成。这种方法的特点是系统开发简单易行,可以大大缩短系统的开发周 期,同时又能保证开发的系统具有较强的制图和地理空间分析麓力,也能在一定程 度上实现跨平台应用。第二种方法是客户端和服务器端都基于j a v a 的w e b g i s 。这 种开发方式可以最大限度地发挥矗v a 编程语言豹优势,但这样傲就必须把已有的 g i s 系统全部改变,推出相应的j a v a 语言版本。因此该方法系统开发难度大、工作 量多、周期长。 3 2 6a j a x 基于a j a x 的w e b g i s 是最几年刚刚兴起的新方法,它最初由g o o g l e 醚a p s 所采 用并迅速流行起来。基于a j a x 的方法改变了w e b g i s 开发的方式,带来了w e b g i s 设计的新模式。 g o o g l e 糙p s 基于罄片预切割技术,服务器端存储不同分辨率下的地鬻切片,客 户端下载这些切片并进行拼合,从而完成地图的浏览。它与基于p l u g i n a c t i v e x 的磷e b g 王s 系统一样都属于客户端解决方案,但是a ;a x 方法最大的不同是客户端浏 览器不安装任何程序,而是由运行予客户端的j a v a s c r i p t 代码来实现。 目前主流的w e b g i s 应用大多采用a j 8 x 的方法,商用的疆e b g j s 系统比如a r c i m s 、 s u p e r 沏pl s n e t 等都提供了对a j a x 的支持。 硕士学位论文 m a s l 、e r st h e s i s 4 基于a - ;鑫x 的辫e b gls 平台的设计 毒1 技术方案设计 4 。1 。1 实现原理 根据研究目标,本方案主要设计地图浏览、查询和g i s 操作等功能。 地图浏览的实现与g o o g 王e 溉p s 类似,固样基于图片预切割技术。服务器端存 放不同比例尺下的地图切片,客户端并不需要一次性载入所有切片,仅下载缓存可 见区域内的切片。客户端的缩放、平移等操作通过a ;8 x 重新载入新的切片从丽实 现地图的浏览。 查询功能主要包括地图搜索、周边查询、公交换乘、点选框选查询等功能, 其实现过程利用a i a x 实现。利用a j a x 实现查询过程,主要分三步。第一步,客户 端利用a j a x 向服务器发送异步查询请求:第二步,服务器端响应请求从数据库中 检索并将检索结果返回给客户端;第三步,返回的结果到达客户端后,客户端利用 a j a x 改变页面的d 踟将结果呈现给用户。 复杂的g i s 功能如缓冲区分析的实现方式主要有两种:一种是使用地图服务器 将分析的结果以输线图片的形式返回给客户端;另外一种是客户端获取要进行分析 对象的坐标,在客户端使用l ( 或s v g ) 绘制的方式完成。 其他的要素,如地图上的标注( 公交站点、地物名称) ,不需要经常更新的( 如 大的地物名称等) 随切片输出:其他的经常变动的或者需要添加热点的( 如公交站 点等) 则通过a j a x 引擎获取并标注在客户端的方式实现。 4 。1 2 体系结构 本方案所要建立的w e b g i s 系统采用多层结构,按其所处位置的不同可分为地 图服务器、数据库服务器、j 】| e b 服务器、客户端等。客户端直接褥向用户,是实现 良好用户体验的关键。它主要完成用于地图的浏览( 包括平移、缩放等) ,处理用 户的交互行为,并通过a j a x 引擎向服务器发送请求。同时服务器端返回的结果经 a j a x 弓| 擎处理后将结果呈现给用户。并e b 服务器用语建立面向整个i n t e r n e t 的w e b 服务,响应客户端的请求返回请求结果。对于复杂的g i s 功能请求,w e b 服务器还 受责将用户的请求转交地墨服务器进行处理。数据库服务器存储整个系统的属性数 据和地物的坐标数据及其他数据( 如公交数据) 等,为整个系统提供数据支持。地 图服务器除处理客户端的g i s 功能请求外,还负责输出切片及将属性数据转入数据 1 2 硕士学位论丈 m a s t e r st h e s i s 库服务器等功能。其体系结构如图4 1 所示。 浏j ;f 器( i e 、f i r e f o :【等)服耆 j a v a s c r 呲c a 也 h t t pr e q u e s i 用 , 七m_ - 户 服 界 引 面 b t m l + c s sd a t a擎 x m l d a t a 务争 、 器 | 一 图4 1 基于a j a x 和g i s 二次开发组件的w e b g i s 体系结构 4 1 3a j a x 框架选择 目前有众多的免费的a j a x 框架可供选择,例如p r o t p t y p e 、s c r i p t a c u l o u s 、 d o j o 、d w r 、a j a x n e t 、a s p n e ta j a x 胁删。为了结合a s p n e t2 0 强大w e b 开发功 能,在本方案中选择a s p n e ta j a x 作为a j a x 框架。 a s p n e ta j a x 是微软公司推出的用于n e t2 o 环境下的a j a x 框架,其开发代 号为a l t a s 。它是目前对a j a x 最完备且功能最强大的封装,包括完善的对客户端面 向对象编程的支持,丰富的客户端服务器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论