基于MapInfo的Web GIS客户端和服务器端设计的选择及模式

Web GIS系统所涉及到的内容十分的广博,需要仔细进行分析和筛选才能设计出合理的系统框架结构,切勿草率动手、照猫画虎、生搬硬套,不然出现了问题很难解决。

由于Web GIS系统涉及到从客户端到后台地图应用服务很多部分的构建和相互通信,哪一部分设计的不合理都可能为开发带来不便或者影响系统的整体性能; 在此,就以往Web GIS 产品的开发经验,分析一下如何设计出合情合理的系统框架。

服务器端的开发结构

MapInfo 公司在Web GIS应用上开发了两套产品: MapXtreme NT 和MapXtreme Java。前者只能应用于NT平台,而后者可以运行在任何平台系统中。无论是MapXtreme NT 或者MapXtreme Java,在服务器端的系统结构基本上都是一致的,只不过两种产品对同一种地图功能的实现提供了不同的API,我们以珠海万禾公司开发的路测分析系统后台地图服务体系框架为例说明服务器端开发的系统结构:

我们按照各部分所负责的职责,将整个系统分离成六个部分:

①客户端浏览器传递到服务器端的信息内容。

②这一部分内容是处理用户操作地图位置坐标信息的入口。

③此处所有的页分别实现系统不同类别的功能,它们从②处取得用户的服务请求,再进行坐标提取、坐标转化、业务实现等操作。

④这一部分则是Web Application 与MapXtreme 的结合部分。
⑤这一部分作为地图的提供者,直接影响了整个系统的性能。

⑥这一部分最终将地图服务的结果发送给用户。

如果前几部分的操作造成了地图状态的更新,则服务器会将重新生成的地图URL传送给客户端,客户端用来显示地图。如果还有查询结果等其他文字信息,也在此返回给客户端负责信息的显示。

客户端设计的选择

我们首先从和最终用户最贴近的浏览器端设计谈起。Web上的产品,首选考虑的是如何为用户提供最简易的操作方法和最友好的界面。能够让非专业人员自己很快体会出整个系统的优点和价值,一直是我们追寻的目标。为此,我们应该为用户从界面、操作流程、速度、简易性等方方面面进行分析。

Web GIS系统需要经常性的从用户浏览器处获取用户操作的点坐标集合,因此客户端必须能够实现显示地图和响应地图上的鼠标操作等基本功能,综合当今比较流行的几种实现方式,我们列出可以被采用的四种模式:

A) IMG类型的HTML表单;

B) 采用Java Script 或者 VB Script编写的DHTML函数包;

C) 采用ActiveX技术编写的浏览器端插件;

D) 采用Java 语言编写的Java Applet。