(计算机软件与理论专业论文)基于xml和组件技术的移动gis应用软件的设计与实现.pdf_第1页
(计算机软件与理论专业论文)基于xml和组件技术的移动gis应用软件的设计与实现.pdf_第2页
(计算机软件与理论专业论文)基于xml和组件技术的移动gis应用软件的设计与实现.pdf_第3页
(计算机软件与理论专业论文)基于xml和组件技术的移动gis应用软件的设计与实现.pdf_第4页
(计算机软件与理论专业论文)基于xml和组件技术的移动gis应用软件的设计与实现.pdf_第5页
已阅读5页,还剩48页未读 继续免费阅读

(计算机软件与理论专业论文)基于xml和组件技术的移动gis应用软件的设计与实现.pdf.pdf 免费下载

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

文档简介

东北大学项士学位论文摘姜 基于x m l 和组件技术的移动g i s 应用软件的设计与实现 摘要 在当今通讯技术飞速发展,交通高度发达的时代,人们的工作、生活空间变 得越来越广阔,对地理信息的需求也随之变得越来越广泛了。仅仅通过互联网查 询地理信息己不能满足人们的需求,他们希望在任意地点即时得到所需的地理信 息。这就要求地理信息系统将数据传递到任意“工作点”。可以预见移动g i s 将 是地理信息系统应用的发展方向。 但由于移动g i s 的特点,使得移动g i s 应用软件的开发面i 晦着两个问题: 第一,移动设备种类繁多、形式各异,如何才能以合理的成本快速开发出面向多 种移动设备的g i s 应用软件;第二,如何在g i s 应用软件中有效地结合来自多 个异构数据源的地理空间数据和非地理空间数据,实现与基础设施的无缝结合。 为了解决第一个问题,本文中采用了组件技术。使用组件技术重新构建移动 g i s 系统结构,可以将复杂的移动g i s 系统分解为具有特定功能的组件的集合。 通过复用、集成具有各种功能的组件,可以快速开发出面向各种移动设备的g i s 应用软件。 第二个问题则采用了x m l - - g m l 的解决方案。将来自多个数据源的地理 空间数据和非地理空间数据统一转换为x m l 格式,可以明显地提高数据表示和 数据传输的质量,很好地实现数据的融合。同时,鉴于x m l 技术的应用逐渐成 为业界的主流,以x i v i l 技术融合地理信息数据能够极大地提高g i s 应用软件的 通用性和扩展性。 最后,本文还介绍了采用c o m 和x m l 技术开发的移动g i s 应用软件的一 个实例一汽车导航系统。 关键词:移动g i s 组件技术x i v i lg m ls c h e m a x s l tc o m 东北大学项士1 擎位论文 t h e d e s i g n a n d i m p l e m e n t a t i o n o f m o b i l eg i s a p p l i c a t i o n s o f t w a r eb a s e do nx m la n d c o m p o n e n tt e c h n o l o g y a b s t r a c t w nt h ed e v d o p m to f 捆n s p 嘣砒i o na n dc o m m u n i c a t i o n , p e o p l e sa c t i v es p a c eb e c o m e s m u c hw i d e rt h a nb e f o r e , a n da c c o r d i n g l yt h e i rr e q u i r e m 簟a sf o rg e o g r a p h i ci n f o r m a t i o n g e tm o r e e x t e n s i v ej u s tg e t t i n gg e o g r a p h i ci n f o r m 吐i o nt h r o u g hw e b s i t ec a n n o tm e e tt h e i rr e q u i r e n a e n t s t h e yh o p et og e tg e o 卿h i ei n f o r m s t i o na n y w h e r ea n da ta n yl i m et h e yw a n tt om e e tt h e s e r e q u i r e m e n t s , g e o g r a p h i ci n f o r m a t i o ns y s t e ms h o u l d s e n dg e o g r a p h i ci n f o r m a t i o nd a t at oa n y 锹p o h e s o m o b i l e g i s w 日l b e t h e t r e n d o f g t s d e v d o p m e n t h o w e v e r , b e c a u s eo f 岫c h a r a c t e r i s t i c so f m o b i l eg i s t h e r ea r e t w o p r o b l e m si nd e v e l o p i n g m o b i l eg i s a p p l i c a t i o ns o t t w a r e :f i r s t l y , t h e r ea r es om a n ym o b i l ed e v i c e sa n da l s ot h e ya r eq u i t e d i f f e r e n tf r o mo n et oa n o t h e r , s oh o wt od e v d o pm o b i l eg i sa p p l i c a t i o ns o f t w a l et h a tf i t sv a r i o u s m o b i l e a p p l i c a t i o n ;s e c o n d t y , h o w t o e f f e c t i v e l y c o m b i n e g e o g r a p h i c a n d n o n - g e o g r a p h i c d a t a f r o m v a r i o u ss o 1 0 曙 t os o l v et h ef i r s tp r o b l e m , c o m p o n e n tt 眈h n o l o g yi su s e di nt h i st h e s i s b yr e c o n s n o n g a r c h i t e c t u r e o f m o b i l e g i ss y s t e m 诚h m p o 哪虻t e c h n 蝴t h e c o m p l i c a t e d m o b i l e g i s s y s t e m c a l lb ed i v i d e di n t os o m ef i m c t i o n a lc o m p o n e n t s a n d b ym a s i n ga n di i l t 耀咖t h e s ef u n c t i o n a l c o m p o n 耐s , i t i sp o s s i b l e , w i t hr e a s o n a b l ec o s t , t or a p i d l yd e v d o pg i sa p p l i c a t i o ns o t b c g a i ef o r v a r l e t s m o b d e d e v i c e s t os o l v et h es e c o n d p r o b l e m , s o l u t i o ni sa d o p t e c tc o n v e n i n g g e o g r a p h i ca n d n o n - g e o g r a p h i ci n f o m m i o n d a t af r o mv a r i o u ss o u l - o e 8t ox m lf o r m a tw i l li m p r o v et h e q l 试时o f d a t a e x p r e s s i o n a n d t r a n s m i s s i o r ls 茂h a g t h a t a p p l y i n g x m l g r a d u a l l y b e c o m e s t h e t r e n d o f t h e i n d u s t r y , c o m b i n i n g g e o g r a p h i c d a t a w i t h x m l t e c h n o l o g y w i l l i m p r o v e t h e u s a b i l i t ya n de x t e n s i b i l i t y o f t h e m o b n eg t s a p p l i c a t i o ns o t t w a m , i nt h ee n do ft h et h e s i & 8 1 1i n s t a n c eo fm o b i l eg 舔i m p l e m e n t e di nc o ma n dx m l i s i n t r t x u c e d k e y w o r d s :m o b i l e g i sc o 删t c x m o l o g yx m lg m ls c h n mx s l tc o m 一一 声明 本人声明所呈交的学位论文是在导师的指导下完成的。论文中取 得的研究成果除加以标注和致谢的地方外,不包含其他人已经发表或 撰写过的研究成果,也不包括本人为获得其他学位而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确 的说明并表示谢意。 本人签聋:金峰半 日 期:2 。吁2 甲 东北大学项士学位论文弟一幸引吉 第一章引言 “1 9 世纪是铁路的时代,2 0 世纪是高速公路的时代,2 l 世纪是网络的时代” 【”。互联网络的迅速崛起和在全球范围内的飞速发展,使其成为高效的全球性信 息传输和发布渠道。 1 1 研究背景 以计算机为核心的信息处理系统技术是二次世界大战后科技革命的主要标志 之一。在信息的诸多类型中与空间相关的信息是十分重要的一类。人类生存在地 球这个三维空间中,期间的万物无不与空间位置相关。因此,如何利用计算机处 理空间相关信息是地理信息系统( g e o g r a p h i ci n f o r m a t i o ns y s t e m ,简称g i s ) 产生 和发展的原动力。g i s 技术在国防、城市规划、交通运输、环境监测和保护等与 国民经济乃至国家命脉相关的重要领域的成功应用,极大地摊动了社会生产力的 发展,同时也极大地刺激了g 1 s 技术的迅速发展,使之成为世界各国激烈竞争 的高科技热点之一。 所谓地理信息系统是管理和研究空间数据的计算机系统。在计算机软硬件支 持下,它可以对空间数据按地理坐标或空间位置进行各种处理、对数据有效管 理、研究各种空间实体及相互关系。通过对多因素的综合分析,它可以迅速地获 取满足应用需要的信息,并能以地图、图形或数据的形式表示处理的结果。口1 近年,计算机和网络技术飞速发展,特别是软件技术的发展,促使g i s 技 术发生了很大的变化。g i s 软件的发展经历了从早期的功能处理模块,到w e b g i s 的过程。 1 但是在传统的w e bg i s 中,用户只能通过浏览器查询地理信息,实时性和 交互性都很差,很难满足人们的需求;加上无线通讯技术的进步,使得移动通信 的应用越来越普及,于是w e bg i s 扩展到了无线领域,成为g i s 的未来发展方 向。 1 2 问题定义 目前,已有一些移动端的g i s 产品,例如p d a 上的g i s 产品,汽车导航产 品等,并应用于各个领域中,如道路设计、公路和人行道的管理、野外的军事作 业、交通事故的检查和汇报等。 但是g i s 的应用需求仍在扩展,它应当可以更加广泛地应用到人们的日常 生活中。例如人们在外出旅行、工作中,可以随时随地查询自己所在的位置,自 己想要到达的目的地的地理位置、路径等。因此g i s 软件开发商希望能够快 速,低成本开发出面向各类移动设备,适用于各类环境,功能丰富的移动g i s 应用软件。同时,由于g i s 应用的特点,使得单一的数据源无法满足移动g i s 一】一 东北夫事项士孳位论支第一幸i i 吉 应用的需求。因此希望能够使用多个数据源的数据,实现与多种异构数据源的无 缝结合。 组件技术的出现,使快速开发软件成为可能。通过开发一系列的具有特定功 能的组件,按需求将满足功能的组 牛组合起来,形成定割的产品,可以极大的提 高软件的开发速度,降低成本。同时,采用x m l 融合来自多个数据源的数据, 并用x m l 描述组件之间,组件和数据源之间传递的消息、数据。能够极大的提 高软件的应用性和扩展性。 因此,本文提出使用组件技术和x m l 技术来解决当前移动g i s 软件开发过 程中存在地问题。后面的章节将进行详细的介绍。 1 3 论文结构 第一章: 第二章: 第三章: 第四章: 介绍了论文的背景和结构。 介绍了移动g i s 的产生、发展和现存的向题 介绍了组件技术的发展与应用; 介绍了x m l 技术的发展与应用; 第五章:阐述了x m l 和组件技术在移动g i g 系统中的应用; 第六章:介绍了一个使用c o m 和x m l 技术的移动g i s 原型系统; 最后是参考文献和附录。 东北大学项士学位论文第;幸移动g i s 的产生与发展 第二章移动g i s 的产生与发展 2 1 移动g l s 的产生 在美国副总统戈尔于1 9 9 8 年提出了“数字地球”的概念之后,中国学者特 别是地质学界的专家认识到“数字地球”战略将对我国社会经济的推动和资源环境 的可持续发展起到重大的作用。于是1 9 9 9 年在北京召开了首届国际“数字地球” 大会。由此出现了许多于数字化相关的概念,如“数字中国”、“数字城市”等。其 中“数字城市”是“数字中国”的重要组成部分。 3 1 所谓“数字城市”是对城市发展方向的一种描述,是指数字技术、信息技术、 网络技术要渗透到城市生活的各个方面。城市的数字化是一个系统工程,通过计 算机网络将各数字节点连接在一起。因此,网络基础设施的不断完善是城市数字 化的必要条件,而由此产生的各类应用则是“数字城市”的重要组成部分之一。 移动g i s 系统正是在这一背景下产生并发展起来的。 2 2 移动g i s 的特点 移动g i s 是w e bg i s 的一种,是继w e bg i s 。以后g i s 系统的又一次大飞 跃,它使得人们能够在任何地点、时间享受g i s 系统提供的服务。 移动g i s 系统与传统的w e bg i s 系统相比具有其自身的特点: 1 终端的多样性 移动g i s 系统的终端可以是传统的桌面p c ,但更多的是各类移动计算终 端,比如移动电话、p d a 、p o c k e tp c ,甚至可能是专用的g i s 嵌入式设备。终端 的多样就意味着移动g i s 服务需要有更加灵活的定制能力和扩展能力,以及开 放的体系结构,以适应终端的多样性。 2 分布式数据源 g i s 系统向无线平台的转移引发了很多新的g i s 应用,它们要求分布式数据 源的支持。例如,基于位置的服务( l o c a t i o nb a s e ds e r v i c e ) 需要g i s 系统实时提 供最新的位置相关信息。由于移动用户的位置是不断变化的,需要的信息也是多 种多样的,任何单一数据源都无法保证。 3 信息载体的多样性 与传统的i n t e r n e t 相比,移动终端用户与服务器及其他用户的交互手段更加 丰富,包括定位服务、视频、音频、语言、文本、图像、图形等。这意味着计算 能力有限的移动终端需要处理更多类型的数据,如何合理地表示这些数据成为一 个等待解决地问题。 - 3 一 东北大学须士单位论文 第= 事移动g 1 5 的产生与发展 4 有限的带宽和计算能力 与i n t e r n e t 相比,同时期无线网络的带宽总是相对较小的。为了确保服务质 量,移动g i s 系统必须通过尽可能少的数据量来提供满足川户要求的服务。同 时,移动终端的计算能力相对较弱:功率有限,显示屏小,内存有限,因此移动 g 1 s 对数据的质量提出了很高的要求。 鉴于上述特点,移动g i s 要容纳各种终端设备和数据源。因此,移动g i s 的体系结构,数据的表示形式和传递方式显得尤为重要。 2 3 当前的解决方案及存在的问题 虽然移动g i s 的出现只是近几年的事情,但是由于用户需求增长很快,各 大g i s 厂商都提供了自己的解决方案。主要有: 1 e s r i 的a r c p a d a r e p a d 是运行于p d a 上的一款移动客户端软件,是移动g i s 的一个轻量 级、低成本解决方案。通过a r c p a d 用户能够快速、轻松地采集现场数据,并提 供即时的数据校正。缸c p a d 还能够通过无线网络下载影像或矢量图层数据,同 时还提供了笔记本电脑和g p s 接收机的集成接口。最重要的是a r c p a d 还能够充 当e s r i 的w e b g i s 软件- - a r c t m s 的客户端,因此a r c p a d 与e s r i 原有的g i s 产品有相当好的兼容性。 显然a r c p a d 主要是e s r i 的w e bg i s 产品的个无线终端,它的后台服务 器端还是e s r i 的w e b g i ss e r v e r 。 2 a u t o d e s k 的m a p g u i d e o n s i t e a u t o d e s k 公司致力于为不同层次的移动用户提供解决方案,分别为推出了 o n s i t e 套件的不同版本和企业版本。但它们的核心模块是一样的,主要由两部分 组成:运行在w i n c e 上的客户端程序o n s i t ev i e w ;为o n s i t ev i e w 处理2 d d w g 和d x f 数据文件的桌面应用程序。 a u t o d e s k 的移动g i s 解决方案本质上就是w e bg i s 服务器+ 移动客户端。与 传统的w e b ( 3 5 相比,除了传输网络由i n t e r n e t 变为无线网络外,没有什么其他 大的变化。因此它们的解决方案可以说只是简单的w e bg i s 方案无线化。 3 m a p l n f o 的m i a w a r e m a p l n f o 为基于位置的服务( l o c a t i o n b a s e d s e r v i c e ,即l b s ) 。推出了自己的 产品:m i a w a r e 。这是一个可以用来创建l b s 服务的平台,提供了简洁、一致、 灵活并且可以扩展的x m l 环境。由m a p l n f o 核心技术、x m l 、a p i 以及一系列 与位置服务相关的功能模块组成。 m i a w a r e 利用了m a p l n f o 的桌面w e bg i s 产品上的核心技术( 即m a p l n f o 核心技术) ,同时也推出了专门针对移动g i s 的新技术。m a p i n f o 的一系列移动 1 d 一 东北大学硕士学位论文 第二幸移动g 1 5 的产生与发展 g i s 产品主要以l b s 应用为重心,而l b s 是移动g i s 特有的应用服务,可以说 m a p l n f o 的移动g i s 解决方案相比其原有的w e bg i s 产品有较大的创新和突 破。 4 1 上述三个解决方案体现了主流g i s 厂商对移动g i s 系统的两种看法: 1 ) w e bg i s 系统向无线网络的延伸; 2 ) 一种应用模式较w e 5g i s 有较大创新和突破的g i s 系统。 很难说哪种看法更有道理,但有两点是明确的: 1 ) 移动g i s 是在w e bg i s 的基础上发展起来的。在特定的环境下,移动 g l s 可以被当作w e bg i s 的一个特例; 2 1 移动g i s 有自己特有的应用模式。 不管g i s 厂商们如何看待移动g i s 与w e bg i s 的关系,它们的移动g i s 解 决方案是最大程度的使用各自的g i s 产品中已有的技术和标准,这样做的好处 在于: 1 ) 熟悉原有g i s 产品的用户而言,学习使用同一厂商的移动g 1 s 产品的门 槛将会很低; 2 ) 同一公司的w e bg i s 系统和移动g i s 系统将会有很好的兼容性,这将大 大方便用户在系统之间共享数据; 3 1 保护了用户对原有w e bg i s 系统的投资。 但是在现有方案中,仍然存在一些不足: 1 ) 只支持有限种类地移动客户端; 2 ) 无法协同表示和表现g i s 数据和其他类型地数据; 3 ) 无法透明地访问其他异构的空间数据源; 4 ) 采用太多地专有技术,对普通用户和二次开发者而言,系统缺乏开放: 以上这些问题的产生,表面上看来是系统实现引起的问题。但是,究其根本 原因在于:系统的体系结构和数据组织。 下面的章节提出了用x m l 和组件技术,为解决这些问题进行一些探讨。 一5 一 采北大学硕士学位论文 第三幸衄件技术的发4 t - b 应甩 第三章组件技术的发展与应用 3 1 组件技术的兴起 几年以前,当微软公司首先使用o l e 的时候,其初衷是为了增强软件的互 操作性。然而在使用过程中,人们逐渐认识到这一技术背后的实质性内容和它在 软件开发中所扮演的重要角色:“组件技术将以前所未有的方式提高软件产业的 生产效率”,这一点己逐步成为软件开发人员的共识。p 1 由于组件技术的出现,软件产业的形式也将会有所改变。大量组件生产商会 涌现出来,并推出各具特色的组件产品;软仆集成商则利用适当f 内甜l 什快速生产 出用户需要的某些应用系统;大而全的通用产品将逐步减少;很多相刘较为专 业,但用途广泛的软件,如g i s 、语音识别系统等,都将以组件的形式组装和扩 散到一般的软件产品中。传统的c l i e n t s e r v e r 结构、群件、中间件等大型软件系 统的构成形式,都将在组件的基础上重新构造。 因此,用组件技术重新构建移动g i s 系统结构符合软件产业的发展趋势, 是g i s 软件发展的必然方向。 3 2 组件技术的介绍 当前主要的组件式平台有: 1 ) o m g 的c o r b a ( c o m m o no b j e c tr e q u e s tb r o k e ra r c h i t e c t u r e ,公共对 象请求代理体系结构) ; 2 ) s u n 的j a v a b e a n s ; 3 ) m i c r o s o r 的c o m ( c o m p o n e n to b j e c tm o d e l ,组件对象模型) : 1 c o r b a 近年来c o r b a 规范作为面向对象分布式处理的主流标准之一,正日趋完善 和成熟,并在各领域广泛的应用。c o r b a 规范的提出是为了整合多种多样的对 象系统。o m g 组织定义了对象管理体系结构( o b j e c tm a n a g e m e n ta r c h i t e c t u r e ,即 o m a ) 作为分布在异构环境中的对象之间交互的参考模型。o m a 由五个部分组 成:对象请求代理( o r b ) 、对象服务、通用设施、域接口和应用接口。o r b 实现 客户和服务对象之间的通信交互,而其它四个部分则是构架于o r b 之上适用于 不同场合的部件。c o r b a 标准就是针对对象请求代理系统制定的规范。 c o r b a 2 0 规范的主要内容包括:o r b 核心、对象适配器、o m g 界面描述 语言( t o l ) 、i d l 语言到具体编程语言的映射、桩和架构、动态调用接口和动态 架构接口、界面仓库以及o r b 间的互操作。通过其内容可以看出c o r b a 的特 点: 东北大学项士学位论文 第三幸组件技术的发展与应用 1 ) o r b 核心提供了对象请求和回答的通信机制,使c o r b a 应用的开发者 无需关心具体通信细节,而把注意力集中到实际的应用程序逻辑中去; 2 ) 对象适配器介于o r b 核心和对象实现之间,负责服务对象的注册,对 象引用的创建和解释,服务进程的激活和挂起,服务对象的激活和挂起 阻及客户请求的分发。由于对象适配器的存在,使得o r b 核心尽可能 地简单,从而提高了o r b 核心的稳定性和效率。在c o r b a 规范中, 定义了“基本对象适配器”作为实现对象适配器的通用标准; 3 ) o m gi d l 语言提供了一组类似于c + + 的语法,供c o r b a 应用的开发 者描述服务对象的界面。o m gi d l 语言只具有描述性,而不具有可执 行性。c o r b a 规范中因此定义了o m gi d l 语言到具体编程语言的映 射,目前的映射包括了c 、c + + 、s m a l l t a l k 、a d a 9 5 和j a v a 等; 4 ) 通过i d l 编译器,用户的i d l 描述文件将生成对应编程语言的桩和架 构程序。桩程序负责把用户的请求进行编码,发送到对象实现端,并对 接收到的处理结果进行解码,把结果或异常信息返回给用户;架构程序 对用户请求进行解码,定位所要求的对象的方法,执行该方法并把执行 结果或异常信息编码后发送回客户。这样的方式通常称为“静态调用方 式”; 5 ) 对应于静态调用方式,c o r b a 还提供了动态调用方式。在动态调用方 式下,用户往往预先不知道服务对象的界面信息。用户首先通过查询或 者其它手段获得服务对象的界面描述信息,然后自行调用o r b 的方法 来构造用户请求并发送到对象实现方。在对象实现方也有一种相类似的 动态分发用户请求的机制,称为动态架构接口。动态方式一般是在编制 网关之类的不确定信息较多的应用时使用。另外,使用动态方式比静态 方式更加灵活。譬如在动态方式下,用户可以选择使用异步的调用方 式。 6 ) 在动态方式下,用户需要查询相应的服务对象的界面描述信息( 在静态 的方式下,这些信息是由i d l 文件来描述的) 。这些信息由一个称为界 面仓库的c o r b a 部件来提供,界面仓库通常是以i d l 描述文件为输 入,将界面描述信息进行处理后存放在文件、数据库或者其它形式的存 储部件中,并提供一组标准的调用接口供用户查询使用; 7 ) c o r b a2 0 规范相对于前一版本的一个最大的特色,就是增加了针对不 同厂商o r b 系统之间的互操作的规范。这主要是由于以前版本的规范 都没有对o r b 间进行通信的数据格式和协议进行规定,从而导致不同 的实现采用了不同的通信格式而无法相互通信。c o r b a2 0 中定义了 g i o p ( 通用o r b 间通信协议1 ,它对数据编码的格式、传输消息的格式 和对运输协议的要求都做出了详细的规定。由于g i o p 是一个抽象的协 议,它必须映射到具体的运输协议或机制中去。目前c o r b a 中支持 7 东北太擘项士学位论文 第三幸衄件技术的发展与应用 g i o p 到t c p i p 协议( 称为i i o p ) 和d c e 的两种映射。在此后的c o r b a 2 0 的修订版本中,还增加了m i c r o s o t t 公司的分布对象计算模型 c o m o l ea u t o m a t i o n 标准之问的互操作的规范,使c o r b a 的可扩展 性得n t 进一步的提高。【6 】 2 j a v a b e a n s j a v a b e a n s 规范将“组件软件”的概念引入到j a v a 编程的领域。它是一种一 般性的设计方法,适用于客户机或服务器机器上运行的j a v a 程序。组件是自含 的、可重用的软件单元;而j a v a b e a n s 组件,则可以使用可视的应用程序开发工 具将它们编写到j a v a 程序中。 企业j a v a b e a n s ( e n t e r p r i s ej a v a b e a n s ,即e j b ) 是j a v a b e a n s 的扩展。e j b 规范的第一版以初稿形式于1 9 9 7 年1 2 月公布,并于1 9 9 8 年3 月作为l0 版发 行。规范作者为e j b 体系结构制定了以下目标: 1 ) e n t e r p r i s ej a v a b e a n s 体系结构将是标准的组件体系结构,用于以j a v a 编程语言构建分布式的面向对象的商务应用程序。通过把使用不同供 应商提供的工具开发出来的组件组合在一起,e n t e r p r i s ej a v a b e a n s 体 系结构将有可能构建分布式的应用程序; 2 1 e n t e r p r i s ej a v a b e a n s 体系结构将使编写应用程序变得容易:应用程序 开发人员将不必了解低层次的事务和状态管理的细节、多线程、资源 共享和其他复杂的低级a p i 。但是,将允许专家级的程序员直接访问 低级a p i : 3 ) e n t e r p r i s ej a v a b e a n s 应用程序将遵循j a v a 编程语言的“一次编写,随 处运行”的原则。e j b 组件可以只开发一次,然后在多个平台上部 署,而不需要重新编译或修改源代码: 4 ) e n t e r p r i s ej a v a b e a n s 体系结构将处理企业应用程序生命周期中的开 发、部署和运行等方面; 5 ) e n t e r p r i s ej a v a b e a n s 体系结构将定义一些约定,这些约定使多个供应 商提供的工具能够开发并部署可在运行时互操作的组件; 6 ) e n t e r p r i s ej a v a b e a n s 体系结构将与现有的服务器平台兼容。供应商将 能够扩展它们的现有产品,以支持e n t e r p r i s ej a v a b e a n s 组件; 7 ) e n t e r p r i s ej a v a b e a n s 体系结构将与j a v a 编程语言编写的其他a p i 兼 容: 8 ) e n t e r p r i s ej a v a b e a n s 体系结构将提供e j b 组件和非j a v a 编程语言应用 程序之间的互操作性; 9 ) e n t e r p r i s ej a v a b e a n s 体系结构将与c o r b a 兼容。川 一8 一 东北太学硕士擘往论文 第三章组肆技术的发展与应恩 c o m 最初作为桌面操作系统平台上的组件技术,主要为o l e 服务。但是随 着w i n d o w sn t 与d c o m 的发布,c o m 通过底层的远程支持使组件技术延伸到 了分布式应用领域,充分体现了c o m 的扩展能力以及组件结构模型的优势。 m t s 为c o m 增添了许多新的内容,弥补了c o m 和d c o m 的一些不足,它注 重于服务器一端的组件管理和配置环境。c o m + 进一步把c o m 、d c o m 和m t s 统一起来,形成真正适合于企业应用的组件技术。 c o m + 不仅继承了c o m 、d c o m 和m t s 的许多特性,同时也新增了一些 服务,比如负载平衡、内存数据库、事件模型、队列服务等。c o m + 新增的服务 为c o m + 应用提供了很强的功能,建立在c o m + 基础上的应用程序可以直接利 用这些服务而获得良好的企业应用特性。 以下列出c o m + 的几个主要特性; 1 ) 真正的异步通讯。c o m + 底层提供了队列组件服务,这使客户和组件 有可能在不同的时间点上协同工作,c o m + 应用无须增加代码就可以获 得这样的特性; 2 ) 事件服务。新的事件机制使事件源和事件接收方实现事件功能更加灵 活,利用系统服务简化了事件模型,避免了c o m 可连接对象机制的琐 碎细节; 3 ) 可伸缩性。c o m + 的可伸缩性来源于多个方面,动态负载平衡以及内 存数据库、对象池等系统服务都为c o m + 的可伸缩性提供了技术基 础,c o m + 的可伸缩性原理上与多层结构的可伸缩特性一致; 4 ) 继承并发展了m t s 的特性。从c o m 到m t s 是一个概念上的飞跃, 但实现上还欠成熟,c o m + 则完善并实现了m t s 的许多概念和特性; 5 ) 可管理和可配置性。管理和配置是应用系统开发完成后的行为,在软 件维护成本不断增加的今天,c o m + 应用将有助于软件厂商和用户减少 这方面的投入; 6 ) 易于开发。c o m + 应用开发的复杂性和难易程度将决定c o m + 的成功 与否,虽然c o m + 开发模型比以前的c o m 组件开发更为简化,但真正 提高开发效率仍需要借助于一些优秀的开发工具。【8 】 c o m + 标志着m i c r o s o f t 的组件技术达到了一个新的高度,它不再局限于一 台机器上的桌面系统,它把目标指向了更为广阔的企业内部网,甚至i n t e r n e t 国 际互连网络。c o m + 与多层结构模型以及w i n d o w s 操作系统为企业应用或w e b 应用提供了一套完整的解决方案。 后面将介绍的原型系统因为是基于w i n c es f 台的,而且c o m 是目前应用 最普遍的组件技术,因此选择了用c o m 来实现。 9 一 东北大学项士学位论文第q 幸x m l 技术的发丧与应用 第四章x m l 技术的发展与应用 x m l 技术在近几年获得了很大的发展,x m l 技术体系涵盖的内容越来越 多,这里只介绍基本的与本文相关的一些内容。 4 1 垤l 的产生背景 x m l 同h t m l 一样都来自s g m l ( s t a n d a r dg e n e r a l i z e dm a r k u pl a n g u a g e , 标准通用标记语言) 。早在w e b 出现之前s g m l 就已经存在了。正如其名称所 言,s g m l 是一种用标记语言来描述文档资料的通用语言,它包含了一系列的文 档类型定义( d o c u m e n tx y p ed e f i n i t i o n ,简称d t d ) 。d t d 中定义了标记的含 义,因而s g m l 的语法是可以扩展的。s g m l 十分庞大,即不容易学习,又不 容易使用,在计算机上实现也十分困难。因此作为s g m l 一个子集的h t m l 成 为流行的w 曲标记语言。 然而随着w e b 应用的越来越广泛和深入,h t m l 组件不堪大任,h t m l 过 于简单的语法严重地阻碍了用它来表现复杂的形式。尽管h t m l 推出了一个又 一个新版本,已经有了脚本、表格、帧等表达功能,但始终满足表了不断增长的 需求,开发种新的w e b 标记语言显得十分必要的。由于s g m l 过于庞大,不 适于作为w e b 语言,w 3 c ( w w wc o n s o r t i u m ) 建议使用一种精简的s g m l 版 本,x m l 就这样诞生了。 x m l 将s g m l 的丰富功能与h t m l 的易用性结合到w e b 的应用中,保留 了s g m l 的可扩展功能,这使得x m l 从根本上有别于h t m l 。x m l 不再是周 定的t a g ( 标记) ,而是允许定义数量不限的标记来描述文档中的资料,允许嵌套 的信息结构。h t m l 只是w e b 显示数据的通用方法,而x m l 提供了一个直接 处理w e b 数据的通用方法。h t m l 着重描述w e b 页面的显示格式,而x m l 着 重描述的是w 曲页面的内容 x m l 是一种存储结构化和半结构化信息的理想数据格式,这些被格式化的 信息可以在不同的媒体介质上发布或出版。本质上x m l 是一种元语言,是一种 用于描述其他语言的语言它的目的是创建一种简单而又强健的信息存储,处理 和分发机制。哪 关于x m l 的详细内容可以访问网站h t t p :w w w w 3 o r g x m v 。 4 2 相关的技术 1 s c h e m a 由于) m 几是s g m l 的一个子集,因此它也集成了s g m l 世界中用于文档 描述的d t d 。然而,d t d 有着不少缺陷: l 、d t d 是基于正则表达式的,描述能力有限 - 1 0 - 东北九挚项士孳位论文第日章) 扒 l 技术的发曩与应甩 2 ) d t d 没有数据类型的支持,在大多数应用环境下能力不足; 3 ) d t d 的约束定义能力不足,无法对x m l 实例文档做出更细致的语义限 带0 ; 4 ) d t d 的结构不够结构化,重用的代价相对较高; 5 1d t d 本身不是x m l 文档,而d t d 的构建和访问并没有标准的接口,无 法使用标准的编程方式进行d t d 维护。 订ls c h e m a 正是针对这些d t d 的缺点而设计的。它是w 3 c 的推荐标准, 于2 0 0 1 年5 月正式发布,使x v l l 文档描述有了个国际标准。) m 儿s c h e m a 目前已经基本上取代了d t d 在x m l 刚剐成为w 3 c 推荐标准时的地位。 x v i ls c h e m a 本身就是一个x m l 文档,具有很强的描述能力,扩展能力和 处理维护能力。它具有如下的特点: 1 ) 丰富的数据类型。x m l 大纲支持的数据类型包括:数字型、布尔型、整 型、日期时间、u k i 、十进制数等。而且还支持由这些简单的类型生成 的更复杂的类型。 2 ) 可以由用户自定义数据类型,称为a r c h e t y p e 。 3 ) 属性分组。属性的应用范围是多种多样的。有的是所有元素都有的,有 的是专门为图形元素设定的。 4 ) 原型可以更新。d t d 定义的内容模式是封闭的,而x m l 大纲定义的内 容模式是开放的,是可以更新的。 5 ) n a m e s p a c e s 的支持。 x m ls c h e m a 的主要目的是用来定义一类x m l 文档,每一个完整的s c h e m a 代表着一个x m l 应用。后面提到的g m l 正是x m l 应用的实例。因此s c h e m a 的“实例文档”常常用来表示一个与特定x m ls c h e m i 相一致的x m l 文档。 关于x m l s c h e m a 的详细规范可以访问h t t p :w w w w 3 a 吗佃l 蛐a f 。 2 n a m e s p a c e s 在x m l 中,用户可以自己定义t a g 和元素。但如果把多个) m 儿文件合并 为一个时,就很可能出现名字冲突。n a m e s p a c e s ( 名字空间) 就是为了解决这个 问题的。 对x m l n a m e s p a c e s 严格的定义是:n a m e s p a c c s 是用u r i 加以区别的,在 x m l 文件的元素和属性中出现的所有名称的集合。有了n a m e s p a c e s ,用户就可 以保证在他的文件中使用的名称是独一无二的。在没有n a m e s p a c e 的x l v l l 文件 中,元素和属性中出现的名称无异于一组没有结构的字符。我们称它们为l o c a l n a m e s ( 本地名称) 。l o c a ln a m e s 在网络上是极不适合的。可以想象,网上会有 成千上万的人使用同一个名称,而它们却代表了不同的意义。n a m e s p a c e 通过 u k i 区别同名的标识。我们已经完全可以相信不会出现冲突了,因为u p , i 是独 一1 1 东北大掌项士学位论文第日幸x m l 技术的震展与应甩 立的,不会重复。 n a m e s p a c e 的声明要用到前缀x m l n s 。声明的n a m e s p a c e 位于指定的u r i 。 同样,它也有个名字,我们称这个名字为n a m e s p a c e 名。n a m e s p a c e 名必须是独 有、一致的。由名字空间名修饰过的元素就被认为它由指定u r i 处的n a m e s p a c e 来约束。 关于x m ls c h e m a 的详细规范可以访问h u p :w w w w 3 o t g a r e e - x m l n 。 3 x s l t x s l t ,全称e x t e n s i b l es t y l e s h e e tl a n g u a g et r a n s f o r m a t i o n ,用于将某一个 x m l 转换为其他结构的x m l 。最简单的应用情况涉及两个源文档:包含原始数 据的x i v i l 文档和用来转换该文档的x s l t 样式表单。x s l t 处理器把x s l t 样 式表单的规则应用到皿文档中。从而输出x h t m l ,w m l ,s v g 或者几乎 其他任何x m l 格式的文档。【l 0 】 对特定的一个x i v l l 源数据文件而言,应用不同的x s l t 样式表单将会生成 不同的x v l l 输出。 关于x s l t 的详细规范可以访问h t t p :a v w w w 3 o r g s t y l e k s t 。 - 1 2 东北太学项士学位埯史 苇五幸苍饽程计方童问题的鼻f 块 第五章总体设计方案及问题的解决 前面的两章简单介绍了解决移动g i s 系统现存问题时需要的技术,这一章 将说明如何使用这些技术来解决问题。 5 1g i s 的组件化趋势 g i s 的发展可以划分为几个发展阶段,了解这一历程可以更好地说明本文中 为什么提出使用组件技术重新构建移动g i s 的系统结构,从而解决移动设备和 数据源

温馨提示

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

评论

0/150

提交评论