APP下载

兼容多GIS系统的资源管理平台的研究

2014-12-23

科技视界 2014年9期
关键词:浏览器应用程序客户端

杨 君

(辽阳技师学院,辽宁 辽阳111000)

地理信息系统(Geographic Information System 或Geo -information System,GIS)有时又可 称为“地学 信息系统” 或“资源 与环境信息 系统”。 他是一 个特殊定位的非常重要的 立体信息系 统。 它要在计算机软件系统、硬件 系统的支持 下,对整 个或是部分地 球表层(包括大气层)空间中的有关地理分布数据进行采集、存储、管理、运算、分析、显示和描述的技术系统。 GIS 处理、管理的对象是多种地理空间实体数据及其关系,包括空间定位数据、图形数据、遥感图像数据、属性数据等,用于分析和处理在一定地理区域内分布的各种现象和过程,解决复杂的规划、决策和管理问题

1 当前主流的GIS 系统

1.1 ARCGIS

ArcGIS Desktop 是一个集成了众多高级GIS 应用的软件套件,它包含了一套带有用户界面组件的Windows 桌面应用。 ArcGIS 服务器的产品规格符合信息技术的规范标准,可以与其它企业所生产的软件进行完美合作,例如Web 服务器,数据库管理系统(DBMS)以及在企业级别的应用开发框架中包括.NET 和JAVA2 企业级平台(J2EE)。 这能够使GIS 与其它海量的信息系统整理技术进行整合。

1.2 Supermap

SuperMap GIS 2008 包括组件式开发平台,开放式桌面平台,空间数据库引擎,嵌入式开发平台,服务式GIS 开发平台,导航应用开发平台和数据处理平台七个主要的产品线。SuperMap GIS 开放式桌面平台包括SuperMap Viewer、SuperMap Express 和SuperMap Deskpro 三个不同的产品。

1.3 Mapinfo

由于MapInfo 容易学习掌握,功能强大,扩展能力强,又能与工作生活中的数据库直接建立连接,因此发展迅速。 随着计算机技术的发展,MapInfo 又相继推出了DOC 版本的2.0 和Windows 版本的3.0 版。直到1995 年底,MapInfo 又推出了他的最新版本mapInfo Professional。这个版本是首个可以在Windows 95 和Windows NT 上运行的桌面地图信息软件。 每一次的版本升级,MapInfo 都会做出很大改进,使其功能越来越强大,界面越来越简单易掌握。MapInfo 可对已有数据进行动态更新与维护,确保用户数据的一致性。

2 系统兼容性研究

2.1 系统兼容性设计

GIS 系统在计算机和信息技术的快速发展下,正发展系统和数据规模的“大型化”、 面向整个社会,满足社会各界对有关地理信息的需求的“社会化”,概括起来就是“简化操作”,“开放数据”,“面向服务”,通过网络实现从数据乃至系统之间的完全共享和互动。 因此,GIS 发展的必然趋势是WebGIS。根据对系统总体功能需求的分析,将本文的GIS 系统按照功能划分为定制地图和浏览地图两大部分,其中定制地图和浏览地图还有其他子模块。 系统的整体结构如图1 所示。

图1 GIS 系统总体结构图

本GIS 系统主要包括以下几个功能模块, 即:GIS Map Service、GIS REST Service、Meta Data Management、WebGIS 客户端。 本文根据需求从GIS 空间数据库中提取数据作为该Web GIS 系统的背景地理图片信息;GIS Map Service 实现对特定GIS 系统的图层信息标准化处理,转化为REST 服务中的文件资源;GIS REST Service 以资源服务方式对外提供基础地理信息图片服务,同时也提高了二次开发所需的其他资源服务;Meta Data Management 模块以HTTP/SOAP 方式访问GIS Map Service 为前端客户按需获取地图提供支持, 同时为用户提供管理GIS 信息的界面;WebGIS 客户端将使用Flex 技术提供各类GIS 服务, 同时预留出一部分接口供用户二次开发使用。 本系统是在SuperMap 平台上二次开发的地理信息系统。

本文运用从整体到局部的设计方法将面向有线电视网络管理的GIS 系统的各个部分划分为各个小的功能模块, 分别对其进行设计。本系统采用模块化设计,这样有利于开发和维护,提高模块复用率,减少开发周期,降低开发成本,易于扩展新的功能。

2.2 客户端服务器

本系统采用B/S 结构,因此客户端实际上就是各种Web 浏览器。从功能上说,客户端是用户的交互界面,主要完成地图的显示、响应用户的操作、向服务器发送查询请求并将请求结果进行显现。 本文选择Flex 作为WebGIS 客户端的实现技术。

传统的Web 应用程序是基于HTML 页面静态的数据传递模式,随着Web 应用复杂程度越来越高, 这种模式已经不能满足用户更高的要求,这就促进了丰富互联网应用程序(RIA)的出现,RIA 具有高度的互动性、丰富的用户体验及功能强大的客户端[25]。RIA 将桌面应用程序响应性和丰富性与Web 应用程序广度结合在一起, 以满足用户更为直观和极具交互性的在线体验。基于RIA 技术构建WebGIS 已成为一个趋势。

目前,RIA 领域异常热闹, 市场上主要的RIA 客户端开发技术主要有Adobe Flash、Adobe Flex、Ajax、SilverLight 和JavaFX 等。这些技术各有特点,其中SilverLight 和JavaFX 技术由于推出不久,尚不成熟,因此不作考虑。 Ajax 技术的应用已经非常广泛, 如GoogleMaps、Mapabc 等都采用了此技术,但是出于性能考虑,采用地图切图预生成的方式,虽然性能方面有所提高,但是不能实现复杂的交互计算功能。Ajax 针对不同的浏览器通过JavaScript 采用不同的技术处理矢量图形,这种跨平台跨浏览器的代价就是代码异常复杂,交互性不强且效率较低。 同时Ajax 技术的其他缺陷比如:不被搜索引擎支持、不支持浏览器的后退功能、纯粹的JavaScript、不支持智能终端设备等,限制了Ajax 技术的应用推广。 基于组件的Flex 技术是由FlashPlayer 运行的RIA 应用。Flash 最初是为了在浏览器中播放矢量动画而设计的,因此能很好地处理矢量和栅格数据, 非常适合作为WebGIS 的客户端,所以本文选择Flex 技术构建基于RIA 的WebGIS 系统。

2.2.1 Flex 概述

Flex 是目前最新开发富互联网应用程序的主要平台,是同时期最完善的RIA 技术。 Flex 技术使得Web 地图不再是单调的浏览和简单的查询,它使系统具有丰富的界面操作体验、良好的视觉体验。如地图移动、拖拽、缩放时,会自动向服务器请求需要的图片,图片会自动补全新的显示区域, 这些计算和处理全部都是使用Flex 在浏览器端完成的。

Flex 是Adobe 公司推出的一系列产品和技术,是目前最流行的富互联网应用程序(Rich Internet Application, RIA)开发技术之一。Flex 是高效率的开放源码框架,可用于构建和维护在所有主流浏览器和操作系统部署的极具表现力的Web 应用程序。 Flex 应用程序框架由MXML、ActionScript 文件和Flex 类库三部分构成,如图2 所示。 开发人员可以利用MXML 或ActionScript 编写程序,MXML 负责应用程序核心内容的主要布局 (可视组件),ActionScript 用于以脚本形式编写驱动应用程序需要的所有逻辑。 顺便说一句,MXML 在后台会被编译成ActionScript。也就是说,只是用ActionScript 就可以创建完备的Flex应用程序。 同时Flex 框架还提供了丰富的控件, 大大提高了开发效率。

图2 Flex 程序执行的过程

Flex 可以创建一种能增强用户体验的应用程序, 可以实现Web Services、远程对象、拖放、内建动画效果和其他简单互动界面等功能,还可以用Java 做出一个应用,把Flex 的技术融合到J2EE 中。 和传统的HTML 应用程序的用户体验相比,Flex 具有强大的优势。 总之,Flex解决了Web 应用中最繁琐的Web 客户端问题。

2.2.2 Web 服务器

开发网络应用程序的第一步是安装一个Web 服务器,在Linux 平台下使用最广泛的免费HTTP 服务器是W3C 及Apache 服务器,而Windows 平台使用IIS 的Web 服务器。 在选择Web 服务器时应从以下几个方面来考虑:网站规模和用途、选择商业的还是免费的、考虑操作系统平台、是否选用多功能的Web 服务器、考虑对Web 应用程序的支持等,下面简单介绍几种主流的Web 服务器产品。

(1)Microsoft IIS

Microsoft 的Web 服务器产品为Internet Information Server(IIS),IIS 是Windows 的一个组件,使用Windows 安装盘就可以安装。 IIS 是目前最流行的Web 服务器产品之一。 Internet 服务管理器是IIS 的图形界面的管理工具,用来控制Internet 服务和监视配置。 IIS 服务器是一个综合性的Internet 信息服务器, 它除了可用来建立Web 网站之外,还可用来建立FTP 网站、SMTP 服务器和NNTP 新闻服务器。

(2)IBM WebSphere

WebSphere 是一组专门为商务网站设计的套件,它为用户提供了一个充分利用Internet 的集成解决方案。它能帮助客户在Web 上创建自己的业务或将自己的业务扩展到Web 上, 提供了一个可扩展的可靠的跨平台的解决方案。

WebSphere Application Server 是一种功能完善、开放的Web 应用程序服务器,是IBM 电子商务计划的核心部分,它是基于Java 的应用环境,用于建立、部署和管理Internet 和Intranet Web 应用程序。

(3)Apache

Apache 源自于NCSA 服务器httpd, 该服务器添加了一些功能后就成为了Apache 。 Apache(阿帕奇)是目前最为流行的Web 服务器,其源代码完全开放, 完全能够胜任每天有数百万人次访问的大型网站,它支持UNIX、Windows 和Mactonish 等操作系统平台。 它快速、可靠并且可通过简单API 扩展,Perl/Python 等解释器可被编译到服务器中。

由于Microsoft IIS 服务器是作为Microsoft 系统的一部分而一起提供的,而且由于它本身也是一个很好的服务器,因此,绝大部分基于Microsofts 的Web 服务器使用的是IIS。 本文的应用程序是基于Windows 平台建立的, 所以在这里选择了比较方便的Microsoft IIS 服务器。

猜你喜欢

浏览器应用程序客户端
删除Win10中自带的应用程序
反浏览器指纹追踪
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
基于Vanconnect的智能家居瘦客户端的设计与实现
环球浏览器
客户端空间数据缓存策略
三星电子将开设应用程序下载商店
微软软件商店开始接受应用程序