CN103036954B - 基于gis的移动信息聚合系统及其方法 - Google Patents

基于gis的移动信息聚合系统及其方法 Download PDF

Info

Publication number
CN103036954B
CN103036954B CN201210508032.3A CN201210508032A CN103036954B CN 103036954 B CN103036954 B CN 103036954B CN 201210508032 A CN201210508032 A CN 201210508032A CN 103036954 B CN103036954 B CN 103036954B
Authority
CN
China
Prior art keywords
data
client
module
service
layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201210508032.3A
Other languages
English (en)
Other versions
CN103036954A (zh
Inventor
程渤
陈俊亮
张恺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201210508032.3A priority Critical patent/CN103036954B/zh
Publication of CN103036954A publication Critical patent/CN103036954A/zh
Application granted granted Critical
Publication of CN103036954B publication Critical patent/CN103036954B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开一种基于地理信息系统(GIS)的信息聚合系统及其方法,主要包括客户端的用户界面层、客户端逻辑层,及服务器端的聚合层和服务层。用户界面层,用于展现地图数据,提供对地图的基本操作以及各功能模块的入口,并负责客户端逻辑层的请求,能够根据客户端逻辑层的响应数据及时在地图上呈现信息;客户端逻辑层,用于负责客户端与服务器端的交互,解析数据并进行展示,以及负责呈现、操作地图、定位、地理测算的逻辑;聚合层,用于将服务层提供的不同来源的原始服务进行聚合,给客户端提供统一的SOAP接口;及服务层,用于提供系统所需的原始数据服务。采用本发明,使用户能够管理与自己生活或工作息息相关的各项数据及所在位置相关的各种信息。

Description

基于GIS的移动信息聚合系统及其方法
技术领域
本发明涉及基于ArcGIS的地图定制、地图服务发布和安卓(Android)平台上对地图服务的访问技术,尤其涉及基于地理信息系统(GIS)的移动信息聚合系统及其方法,用以通过在地图上聚合数据并利用Mashup平台聚合基于位置的服务,使用户能够管理与自己生活或工作息息相关的各项数据以及自己所在位置相关各种信息。
背景技术
计算机技术、互联网及现代通信技术的迅速发展,为空间信息的获取、传输、处理、分析与表达提供了创新和升级的巨大空间,地图作为空间信息可视化产品之一,已告别了静态的地理信息的表现形式这一传统概念,更是发展为一种动态的、具有交互性的地理信息系统(GIS)给人们的生活提供便利。随着移动互联网的发展,GIS与移动互联网的结合越来越紧密,移动GIS的应用也日益广泛,使得人们能够通过移动终端设备随时随地获取有关地理信息的服务。
近年来,移动GIS技术日益成熟,其支撑是移动互联网,核心是地图。基于位置的服务(LocationBasedService,LBS)通过无线通信网络或外部定位方式获得移动终端的位置信息,这些信息则在GIS平台的支持下,为用户提供相应服务。LBS可以应用到工作、生活等不同的领域,人们在移动中可以随时获取自己所在位置以及与自己位置相关的各类资讯。
如今互联网上大多数LBS的应用都偏向于生活服务类,但其应用范围不仅仅如此。传统的PC上的地图应用往往倾向于全局性地展示资源,智能终端与移动GIS的出现弥补了这一不足,使得资源可以动态地与地理位置绑定。比如运营商可以将基站、机房等设备的信息聚合到地图服务上,使分散的资源能统一的在地图上展示,通过定位到具体设备的位置可以对其进行资源的管理,动态地实时地更新设备的数据。又如物联网项目中,可以将节点网络展示在地图上,当终端移动到具体某个节点的位置时可以及时在地图上显示节点位置信息以及该位置上的资源数据,实现运动到任意位置都能对该位置进行数据的管理。由此可见,将GIS与LBS应用于工程项目或日常工作中不仅可以一目了然地展示各种资源,还能是数据的管理工作更加清晰明了。
发明内容
有鉴于此,本发明的主要目的在于提供一种基于地理信息系统(GIS)的移动信息聚合系统及其方法,使不同的Web服务得到聚合并且实现地图Mashup,使用户能够管理与自己生活或工作息息相关的各项数据以及自己所在位置相关的各种信息,从而满足用户个性化的需求。
为达到上述目的,本发明的技术方案是这样实现的:
一种基于地理信息系统(GIS)的移动信息聚合系统,主要包括用户界面层、客户端逻辑层、聚合层以及服务层;所述用户界面层和客户端逻辑层属于客户端;所述聚合层和服务层属于服务器端;其中:
所述用户界面层,用于展现地图数据,提供对地图的基本操作以及各功能模块的入口,并负责客户端逻辑层的请求,能够根据客户端逻辑层的响应数据及时在地图上呈现信息;
所述客户端逻辑层,属于客户端侧的核心层,用于负责客户端与服务器端的交互,解析数据并进行展示,以及负责呈现、操作地图、定位、地理测算的逻辑;
所述聚合层,用于将服务层提供的不同来源的原始服务进行聚合,给客户端提供统一的SOAP接口;及
所述服务层,用于提供系统所需的原始数据服务。
其中:所述服务器端主要包括数据服务提供模块、服务聚合模块以及地理编码服务提供模块:所述客户端主要包括数据加载模块、数据修改模块、地址查找模块、距离测量模块以及基于位置的服务(LBS)模块;其中:
所述数据服务提供模块,用于实现数据到服务的转换,通过在Java上构建Restful风格的WebService实现;该模块至少包括域对象、数据访问对象和资源类对象;
所述服务聚合模块,用于利用Mahsup平台将不同的服务进行聚合,对客户端提供统一的SOAP接口,以减轻客户端开发的复杂性,使代码可以重复利用;
所述地理编码服务提供模块,用于实现从地理位置到经纬度的映射;
所述数据加载模块,发送HTTP请求到所述数据服务提供模块,加载服务器上的所有数据,每一条数据对应地图中的一个位置点;其任务之一是在地图上将所有位置点进行标记渲染,其次是将数据所带的信息封装成位置点的属性,供用户随时在地图上查询;
所述数据修改模块,作为对数据加载模块的补充,提供用户修改数据库数据的功能;
所述地址查找模块,由客户端调用地理编码服务,当用户输入地名并确定搜索时能在地图上定位到相应地点并标记;
所述距离测量模块,用于完善地图功能,利用ArcGISAndroidAPI获取地图上任意两点的经纬度,测量两点间的距离;以及
所述LBS模块,用于给用户呈现基于位置的服务,根据移动客户端所在位置以及用户的选择,给用户提供所在位置附近的与位置有关的信息。该模块的实现是调用服务聚合模块中的基于位置的服务的过程,发送SOAP请求,服务器根据请求内容做出响应,将结果反馈给客户端。
其中,所述客户端还包括定位模块,用于实现GPS定位和基站定位。
一种基于GIS的移动信息聚合系统的工作方法,包括如下步骤:
A、实现GIS模块的步骤,使用ArcGISdesktop系列软件定制地图,使用ArcGISServer发布地图服务,采用ArcGISforAndroid原生开发的方式展现地图服务;
B、在地图平面坐标和经纬度坐标做转换,并将坐标间的转换映射到不同空间;
C、利用Jerseyapi或Mashup平台的Dataservice将数据库的内容发布成服务,使所述客户端不必远程访问数据库即可直接通过WebService的方式访问数据;
D、在Mashup平台利用Javascript写逻辑,以实现对不同网络信息的聚合,并生成SOAP风格的服务。
其中:步骤A还包括:采用地图Compact格式切片的方式将地图服务存储到移动终端上,实现离线地图。
步骤D之后进一步包括:
E、以多任务并发执行相互独立的各个功能模块,所述功能模块均需与服务器交互,并需要对网络资源进行访问。
步骤E进一步包括:将耗时较多的操作放到多线程中执行。
一种基于GIS的移动信息聚合系统的应用方法,该方法包括:
a、服务器数据服务提供模块存储好各个基站信息,将所述数据发布成服务;
b、在移动终端上安装客户端,运行数据加载功能,通过客户端向服务器发出HTTP请求以获取数据,并在地图上标记出终端所在区域内所有基站的位置;
c、数据修改模块在新的Activity中展示基站数据,获取用户修改的数据后远程连接服务器端数据库修改数据;
d、定位模块通过GPS或基站定位的方式在地图上标记移动终端所在位置,并找到离该位置距离最近的基站;
e、距离测量模块通过解析计算出移动终端所在位置到基站之间的距离;
f、利用LBS模块调用定位模块获取移动终端所在位置,根据用户需求发送HTTP请求到Mashup平台服务器去获取所需的基于位置的服务;Mashup平台服务器根据用户的请求类型返回适当服务;
g、客户端上所呈现的数据均来自服务器,最终的聚合体现在客户端上。
本发明所提供的基于地理信息系统(GIS)的移动信息聚合系统及其方法,具有以下优点:
本发明能将GIS和LBS技术应用于工程项目和生活实践,可以一目了然地展示各种资源,使数据的管理工作更加清晰明了。其采用Mashup理念聚合来自不同数据源的信息,能够为客户端提供统一的访问接口,使web服务的调用统一和规范。并且还能将复杂的逻辑集中在服务器上,客户端只承担信息的获取展示以及少量运算,降低了对客户端的硬件要求,因而易于推广和普及。
附图说明
图1为本发明基于GIS的移动信息聚合系统结构组成示意图;
图2为本发明数据服务提供模块工作顺序图;
图3为本发明基于位置的服务聚合模块工作顺序图;
图4为本发明客户端系统结构示意图;
图5为本发明服务器与客户端交互示意图;
图6为数据加载模块结构图;
图7为数据修改模块流程图。
具体实施方式
下面结合附图及本发明的实施例对本发明的系统及其方法作进一步详细的说明。
本发明的特点在于:该基于GIS的移动信息聚合系统,以Android平台为例,采用客户机/服务器(C/S)架构,结合GIS和Mashup理念,使用户能够管理与自己生活或工作息息相关的各项数据以及自己所在位置相关各种信息。
图1为本发明基于GIS的移动信息聚合系统结构组成示意图,如图1所示,该基于GIS的移动信息聚合系统,主要由用户界面层、客户端逻辑层、聚合层、服务层组成。其中:
用户界面层,主要用于展现地图数据,提供对地图的基本操作以及各功能模块的入口,对客户端逻辑层的请求也由该层负责,能够根据客户端逻辑层的响应数据及时在地图上呈现信息。
客户端逻辑层,是客户端上的核心,负责客户端上的逻辑,由于大部分的操作都集中在服务器端,客户端的主要逻辑是与服务器交互,解析数据进行展示,此外也涉及到一些呈现及操作地图、定位、地理测算的逻辑;
聚合层,用于将服务层提供的不同来源的原始服务进行聚合,提供给客户端统一的简单对象访问协议(SOAP)接口。聚合层有一个入口,一个出口,入口接收用户发送的请求,提取服务类型参数,出口返回用户需要的数据。通过JavaScript写聚合逻辑实现服务的聚合,返回数据的格式为XML。
服务层,提供系统所需要的原始数据服务。数据来源于自己发布的数据服务、基于位置的服务、ArcGISServer发布的空间数据服务。
所述的移动信息聚合系统,分为服务器端(Server)和客户端(Client),如图1所示,所述服务层和聚合层位于服务器端侧,进一步的,服务器端的模块包括数据服务提供模块、服务聚合模块和地理编码服务提供模块。客户端逻辑层和用户界面层位于客户端侧,进一步地,客户端具体模块包括数据加载模块、数据修改模块、定位模块、地址查找模块、距离测量模块以及LBS模块。该系统中的上述各模块具体功能及与其它模块的交互关系说明如下:
数据服务提供模块,位于服务器端,数据源是用户需要管理的数据,最终提供的是可以操作数据的REST风格的WebService。该模块是实现数据到数据服务的过程,对外只提供对数据增、删、查、改的REST接口。其用于实现数据到服务的转换,通过在Java上构建RESTful风格的WebService实现。该模块至少包括域对象、数据访问对象和资源类对象。具体实现方法如下:
1)域对象描述要解决的问题域。
2)数据访问对象封装对数据库的操作,对外屏蔽数据库的连接与关闭细节。
3)资源类定义HTTP请求的方法、服务器与客户端交互的数据格式并将数据发布成RESTful风格的WebService。
4)如图2所示,服务器接收客户端通过HTTP协议承载的业务请求消息,交由资源类处理,资源类判断该请求消息所属的种类,调用数据访问对象处理相应类型的请求,查询数据库搜索所需数据,资源类再将数据访问对象返回的数据封装成格式化的XML对象,再返回给客户端,交由相应的功能模块做后继处理。
服务聚合模块,该模块位于服务器端,要聚合的信息往往来自于多个数据源或者不同的WebService,不同的信息都是通过不同的API来访问,该模块利用Mahsup平台将不同的服务进行聚合,对客户端提供统一的SOAP接口,以减轻客户端开发的复杂性,使代码可以重复利用。当客户端发出请求后,该模块根据请求的内容做出相应的回应。用于担任WebService和客户端之间的枢纽,用JavaScript写聚合逻辑。不同的服务通过调用不同网站提供的应用编程接口(API)来实现,为了让客户端能通过统一的SOAP请求去获取这些服务,该模块将不同的服务进行聚合。所述服务层各功能部分如下:
输入部分接收客户端请求,提取服务类型和相关参数,判断两者格式是符合规定;
服务层的服务类型各异,设置类型域,用于辨别不同服务。适配部分从输入部分获取服务类型,与类型域匹配,将客户端请求适配到服务层相应的服务上;
消息的封装和发送部分是聚合层与服务层的交互部分,负责将请求内容封装成消息,发送到服务层并接收返回数据;
XML对象的解析和创建部分负责解析原始的XML数据,除去冗余信息,利用提取出的有效数据;
数据聚合部分,用以定义聚合模板,使用提取出的有效数据填充聚合模板,将多个的服务数据聚合成一个数据,或者为客户端调用特定的某个服务。
对服务层服务的调用集中在聚合层,根据客户端请求的类型分配服务的调用;输出部分将处理好的数据返回给客户端。具体实现方法是用Mashup平台进行业务聚合,如图3所示:
1)定义格式化的输入和输出类型,输入类型用于从SOAP请求中提取消息,输出类型用于将处理过的数据返回给客户端。
2)接收客户端通过HTTP协议承载包含业务请求的SOAP消息,Mashup平台会提取出消息中的请求类型和参数。
3)根据请求类型和参数封装WSRequest请求,调用相应的API,获取原始的xml数据。
4)解析原始的xml数据,用E4X解析,去除冗余信息,重新构建格式化的聚合模板,可以按照下列格式定义:
<nearby>
<food>
<status></status>
<name></name>
<vicinity></vicinity>…
</food>
<gasStation>
</gasStation>
<bank>
</bank>
</nearby>
上述模块聚合了餐馆、加油站、银行三种信息。
5)Mashup平台会将聚合好的数据封装成格式化的SOAP消息,返回
给客户端,客户端再交由对应的功能模块进行后继处理。
地理编码服务提供模块,实现经纬度到地理位置的映射,客户端将地理位置名称发送给服务器端,服务器端返回该位置的经纬度。实现过程借助ArcGISDesktop系列软件,包括以下几个步骤:
1)利用shapefile文件创建地址定位器,实现位置名称和经纬度之间的一一映射。
2)把地址定位器发布成地理编码服务,提供可供ArcGIAndroidAPI调用的REST接口。
图4为本发明客户端系统的结构示意图,如图4所示,该客户端采用MVC(Model-View-Controller)的设计思想,用Eclipse加Android和ArcGIS插件开发。
其中,所述M是指数据模型,V是指用户界面即视图,C则是控制器。
视图部分是客户端的UI界面层,是用户与系统交互的媒介,包括地图展示层和菜单层。地图展示层用ArcGISAndroidAPI来实现,图层通常分为底图图层(basemaplayer)和操作图层(operationallayer),前者是指漫游或导航时起参考作用的图层,这些图层的内容通常不会变化,只起到视觉辅助作用;后者是指存储GIS数据的图层。系统中basemaplayer用离线的方式加载地图服务,将发布好的地图服务切割成密集(Compact)格式的切片存储在客户端中。operationallayer分为两层,一层用于存储数据服务中需要展示的要素,这部分变动很小,在地图上的位置基本不变;另一层用于绘制动态的地图要素,这些要素的生命周期较短,变动的可能性较大。菜单层(menu)提供控制逻辑层的入口,根据控制逻辑层的模块划分分为六部分,以对应“数据加载”、“数据修改”、“定位”、“距离测量”、“Nearby”、“天气”。菜单的布局上以弹出对话框或者跳转到新的Activity的方式实现。
控制器层,即客户端的逻辑控制层,该部分涵盖了客户端中大部分的业务逻辑,是客户端中功能模块的集合,与数据交互层进行数据交互,进行相应处理后在UI界面层显示。逻辑控制层包含了以下各模块:
数据加载模块,用于发送HTTP请求到所述数据服务提供模块,加载服务器上的所有数据,每一条数据对应地图中的一个位置点。该模块任务之一是在地图上将所有位置点进行标记渲染,其次是将数据所带的信息封装成位置点的属性,供用户随时在地图上查询。该模块的主要功能是在地图上标记各个信息点的位置,并提供信息点详细信息的查询,在信息被修改后起到刷新作用。
参考图6,所需数据已经由数据交互层从服务器上获得并解析,设计存储基信息的类,该模块从数据交互层接收的数据是一个信息点的列表,这样设计的目的是使各个信息点的信息更加独立化,便于操作。每个信息点在地图上对应一个要素点,详细信息通过属性绑定的方式赋给每个要素点,最终将要素点渲染在地图上,呈现出信息点的位置。对整个地图图层添加监听事件,捕捉用户对要素点的选取,捕捉成功时展示信息点详细信息。从服务器上获取信息的过程采用异步任务的方式,通过Android中的AsyncTask实现。
数据加载模块只提供信息的展示,而数据修改模块则提供信息的管理,数据修改模块是对数据加载模块的补充,数据加载模块只提供呈现数据的功能,数据修改模块提供用户修改数据库数据的功能。调用数据加载模块将数据先保存到本地,用户做出修改,修改后的数据会直接反映到本地,然后在服务器端的数据库中做出相应修改。如图7所示,数据修改包括如下几个步骤:
步骤71:调用数据加载模块将数据先保存到本地,以信息点的编号作为标签,用哈希表存储所加载的数据。
步骤72:创建用于展示数据的Activity,用ListView的方式列出各个信息点的标识。
步骤73:获取ListView每个Item的文本,文本对应的是哈希表中的标签,取出标签对应的值,通过AlertDialog的方式呈现给用户并供用户修改。
步骤74:将用户所做的修改先保存在本地,然后用调用数据访问对象用JDBC的方式去修改服务器端数据库。
步骤75:数据修改的过程采用Android多线程方式,用Thread加Handler的机制实现。
所述定位模块,是实现LBS的基础,用于实现GPS定位和基站定位。在Android平台中用locationManager类来实现GPS定位。基站定位则调用SDK中的API(TelephonyManager)获得MCC、MNC、LAC、CID等信息,然后通过google的API获得所在位置的经纬度,最后再通过googlemap的API获得实际的地理位置。
所述地址查找模块,由客户端调用地理编码服务,当用户输入地名并确定搜索时能在地图上定位到相应地点并标记。调用地理编码服务的过程,采用Android异步任务,重写AsyncTask中的doInBackground方法,在该方法实现地理编码服务的调用过程,以地理编码服务的REST地址为参数实例化Locator类,调用Locator的geocode()方法请求地理编码服务。
所述距离测量模块,用于完善地图功能,利用ArcGISAndroidAPI获取地图上任意两点的经纬度,测量两点间的距离。能够用于测量地图上任意线段或者折线的实际长度。用户在地图上选择起点,以单击的方式增加节点,双击表示线段绘制完毕,在地图上显示用户所绘制的折线,然后显示所绘折线的长度。
为了是实现测距模块的操作,定义地图上的监听事件,重写onSingleTap及onDoubleTap事件,onSingleTap方法判断用户是否第一次单击,若是则将所单击的点记录为起始点,否则将点直接加入路径中。onDoubleTap方法将整个路径绘制在地图上。
定义用于测算距离方法,计算距离的方式是利用解析球体的几何方法,求得地图上两点与地心连线的夹角,假设地球是规则球体,根据地球半径及两点的经纬度即可求得地球上两点之间的距离。
所述LBS模块,用于给用户呈现基于位置的服务,根据移动客户端所在位置以及用户的选择,给用户提供所在位置附近的与位置有关的信息。该模块的实现是调用服务聚合模块中的基于位置的服务的过程,发送SOAP请求,服务器根据请求内容做出响应,将结果反馈给客户端。具体来说,用于搜寻移动终端所在位置周边用户所需要的或者感兴趣的信息。每次调用这两个模块前都必须通过定位模块获取位置信息。由于具体的操作都在Mashup平台服务器上,这两个模块只需从数据交互层取得解析好的xml数据然后在UI界面层显示即可。这两个模块要显示的数据量较大,故用跳转到新Activity的方式实现界面布局。该模块通过HTTP协议封装包含请求的SOAP消息,发送到服务器端的基于位置的服务聚合模块,服务器返回结果后通过相应的解析模块处理,将最后的数据传递给该模块。
所述模型层,即客户端的数据交互层,这一层是逻辑控制层和服务器端的中介。主要负责向服务器端发送请求,接收并解析服务器端返回的数据,与服务器端数据交互的格式为XML或JSON。将解析好的数据封装成相应的类,逻辑控制层直接从这些类里获取所需数据。数据交互层主要有三个部分:
数据库操作,这部分主要是远程操作数据库,对应逻辑控制层的数据修改模块,这部分将对数据库的增删改查都封装成对应的接口,供数据修改模块直接调用;
XML及JSON的处理,整个系统中服务器端和客户端交互的数据格式多为XML,也有部分JSON格式,java中对JSON的处理比XML方便,但是Mashup平台只支持XML格式的数据传递,因而XML在数据交互中占主导地位。
HTTP请求的处理,数据交互层从服务器端获取数据的方式是发送HTTP请求,请求的服务有REST及SOAP风格的WebService。
图5为本发明服务器与客户端交互示意图,如图5所示,客户端与服务器端之间的通信,采用的是基于HTTP协议的C/S模式。移动客户端通过HTTP协议将请求发送给服务器,服务器将数据封装成XML文档发送给客户端。此外还涉及到了远程连接数据库的操作,这部分仅限于数据修改模块。系统涉及到三种服务的聚合,分别是数据服务提供模块所发布的数据服务、Mashup平台上聚合的服务和地理编码服务。
下面介绍本发明的一个具体实施实例的试验情况:以运营商基站普查为场景,介绍各个模块的操作步骤。
步骤1:服务器数据服务提供模块存储好各个基站信息,将数据发布成服务。
步骤2:手机等移动终端上安装好系统客户端,运行数据加载功能,客户端向服务器发出HTTP请求以获取数据,在地图上标记出终端所在区域内所有基站的位置。用户点击基站图标可以查看基站的信息。
步骤3:数据修改模块在新的Activity中展示基站数据,获取用户修改的数据后远程连接服务器端数据库修改数据。这个过程是对基站信息的管理。
步骤4:定位模块通过GPS或者基站定位的方式在地图上标记移动终端所在位置,并找到离该位置距离最近的基站。
步骤5:距离测量模块通过解析几何的方法计算出移动终端所在位置到基站之间的距离。
步骤6:利用LBS模块调用定位模块获取移动终端所在位置,根据用户需求发送HTTP请求到Mashup平台服务器去获取所需的基于位置的服务。Mashup平台服务器会根据用户的请求类型返回适当服务。
步骤7:客户端上所呈现的数据均来自服务器,最终的聚合体现在客户端上。
发明人经过多次仿真实验,实验数据结果表明,本发明的实施方案是成功的,能够实现发明目的。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (7)

1.一种基于地理信息系统GIS的移动信息聚合系统,其特征在于,包括用户界面层、客户端逻辑层、聚合层以及服务层;所述用户界面层和客户端逻辑层在网络结构上属于客户端;所述聚合层和服务层在网络结构上属于服务器端;其中:
所述用户界面层,用于展现地图数据,提供对地图的基本操作以及各功能模块的入口,对客户端逻辑层的请求也由该层负责,能够根据客户端逻辑层的响应数据及时在地图上呈现信息;
所述客户端逻辑层,属于客户端侧的核心层,用于负责客户端与服务器端的交互,解析数据并进行展示,以及负责呈现、操作地图、定位、地理测算的逻辑;
所述客户端包括数据加载模块、数据修改模块、地址查找模块、距离测量模块以及基于位置的服务LBS模块;其中:所述数据加载模块,发送HTTP请求到服务器端的数据服务提供模块,加载服务器上的所有数据,每一条数据对应地图中的一个位置点;其任务之一是在地图上将所有位置点进行标记渲染,其次是将数据所带的信息封装成位置点的属性,供用户随时在地图上查询;所述数据修改模块,作为对数据加载模块的补充,提供用户修改数据库数据的功能;所述地址查找模块,由客户端调用地理编码服务,当用户输入地名并确定搜索时能在地图上定位到相应地点并标记;所述距离测量模块,用于完善地图功能,利用ArcGISAndroidAPI获取地图上任意两点的经纬度,测量两点间的距离;以及所述LBS模块,用于给用户呈现基于位置的服务,根据客户端所在位置以及用户的选择,给用户提供所在位置附近的与位置有关的信息;
所述聚合层,用于将服务层提供的不同来源的原始服务进行聚合,给客户端提供统一的简单对象访问协议SOAP接口;及
所述服务层,用于提供系统所需的原始数据服务;
所述服务器端包括数据服务提供模块、服务聚合模块以及地理编码服务提供模块;其中,所述数据服务提供模块,用于实现数据到服务的转换,通过在Java上构建RESTful风格的WebService实现;该模块至少包括域对象、数据访问对象和资源类对象;所述服务聚合模块,用于利用Mashup平台将不同的服务进行聚合,对客户端提供统一的SOAP接口,以减轻客户端开发的复杂性,使代码可以重复利用;所述地理编码服务提供模块,用于实现从地理位置到经纬度的映射。
2.根据权利要求1所述的基于GIS的移动信息聚合系统,其特征在于,所述客户端还包括定位模块,用于实现GPS定位和基站定位。
3.根据权利要求1所述的基于GIS的移动信息聚合系统,其特征在于,所述LBS模块,调用服务聚合模块中的基于位置的服务,发送SOAP请求,服务器根据请求内容做出响应,将结果反馈给客户端。
4.一种基于GIS的移动信息聚合系统的工作方法,其特征在于,包括如下步骤:
A、实现GIS模块的步骤,使用ArcGISdesktop系列软件定制地图,使用ArcGISServer发布地图服务,采用ArcGISforAndroid原生开发的方式展现地图服务;
B、在地图平面坐标和经纬度坐标之间做转换,并将坐标间的转换映射到不同空间;
C、利用Jerseyapi或Mashup平台的Dataservice将数据库的内容发布成服务,使客户端不必远程访问数据库即可直接通过WebService的方式访问数据;
D、在Mashup平台利用Javascript写逻辑,以实现对不同网络信息的聚合,并生成SOAP风格的服务。
5.根据权利要求4所述基于GIS的移动信息聚合系统的工作方法,其特征在于,步骤A还包括:采用地图Compact格式切片的方式将地图服务存储到移动终端上,实现离线地图。
6.根据权利要求4所述基于GIS的移动信息聚合系统的工作方法,其特征在于,步骤D之后进一步包括:
E、以多任务并发执行相互独立的各个功能模块,所述功能模块均需与服务器交互,并需要对网络资源进行访问。
7.一种基于GIS的移动信息聚合系统的应用方法,其特征在于,该方法包括:
a、服务器端数据服务提供模块存储好各个基站信息,将数据发布成服务;
b、在移动终端上安装客户端,运行数据加载功能,通过客户端向服务器发出HTTP请求以获取数据,并在地图上标记出终端所在区域内所有基站的位置;
c、客户端数据修改模块在新的Activity中展示基站数据,获取用户修改的数据后远程连接服务器端数据库修改数据;
d、客户端定位模块通过GPS或基站定位的方式在地图上标记移动终端所在位置,并找到离该位置距离最近的基站;
e、客户端距离测量模块通过解析计算出移动终端所在位置到基站之间的距离;
f、利用客户端基于位置的服务LBS模块调用定位模块获取移动终端所在位置,根据用户需求发送HTTP请求到Mashup平台服务器去获取所需的基于位置的服务;Mashup平台服务器根据用户的请求类型返回适当服务;
g、客户端上所呈现的数据均来自服务器,最终的聚合体现在客户端上。
CN201210508032.3A 2012-12-03 2012-12-03 基于gis的移动信息聚合系统及其方法 Expired - Fee Related CN103036954B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210508032.3A CN103036954B (zh) 2012-12-03 2012-12-03 基于gis的移动信息聚合系统及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210508032.3A CN103036954B (zh) 2012-12-03 2012-12-03 基于gis的移动信息聚合系统及其方法

Publications (2)

Publication Number Publication Date
CN103036954A CN103036954A (zh) 2013-04-10
CN103036954B true CN103036954B (zh) 2016-05-11

Family

ID=48023426

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210508032.3A Expired - Fee Related CN103036954B (zh) 2012-12-03 2012-12-03 基于gis的移动信息聚合系统及其方法

Country Status (1)

Country Link
CN (1) CN103036954B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103488776B (zh) * 2013-09-29 2017-04-05 东南大学 一种实时在线获取地图数据的方法

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104216919B (zh) * 2013-06-05 2018-09-07 捷讯平和(北京)科技发展有限公司 用于完善电子地图数据的方法及系统
US10198158B2 (en) 2013-07-19 2019-02-05 Entit Software Llc Map with different degrees of overlapping geocoded pixels
CN104598060A (zh) * 2013-10-31 2015-05-06 南京思润软件有限公司 一种通过地址接口获取系统中建筑物对象实况地图的方法
CN103607434A (zh) * 2013-11-04 2014-02-26 四川长虹电器股份有限公司 网络通信数据的交互方法
TW201520945A (zh) * 2013-11-20 2015-06-01 Chunghwa Telecom Co Ltd 行動裝置上提供在地化服務之系統與方法
CN103677810B (zh) * 2013-11-21 2018-06-01 金蝶软件(中国)有限公司 业务移动应用系统及其应用方法
CN104240070A (zh) * 2014-09-15 2014-12-24 国家电网公司 一种数据发布服务系统和方法
CN104572107A (zh) * 2015-01-12 2015-04-29 浪潮软件股份有限公司 一种基于DOJOJavaScript的WebGIS开发框架构建方法及装置
CN106205179A (zh) * 2016-07-25 2016-12-07 成都理工大学 城市公共自行车实时在线查询系统
CN107967664B (zh) * 2016-10-19 2021-03-16 阿里巴巴(中国)有限公司 一种电子地图路线绘制方法及装置
US11537272B2 (en) * 2016-12-21 2022-12-27 Aon Global Operations Se, Singapore Branch Content management system extensions
CN109714698A (zh) * 2017-10-20 2019-05-03 镇江雅迅软件有限责任公司 一种基于lbs应用的内容管理系统
CN107832441A (zh) * 2017-11-17 2018-03-23 北京锐安科技有限公司 一种解析地址的方法以及装置
CN109241213B (zh) * 2018-07-26 2021-08-06 汉华易美(天津)图像技术有限公司 一种电子地图点位聚合方法及装置
CN109325067A (zh) * 2018-08-07 2019-02-12 东软集团股份有限公司 数据库与客户端的数据交互方法、装置、存储介质和设备
CN109379402A (zh) * 2018-09-11 2019-02-22 句容市凯特电力电器有限公司 一种基于位置的移动服务系统
CN109710219B (zh) * 2018-12-10 2022-04-05 武汉烽火众智智慧之星科技有限公司 一种基于Openlayers快速加载不同数量级数据的处理方法
CN110866078A (zh) * 2019-11-11 2020-03-06 广州小鹏汽车科技有限公司 数据处理方法及装置、显示控制方法及装置和车辆
CN111209457B (zh) * 2019-12-24 2020-09-18 中国科学院电子学研究所苏州研究院 一种目标典型活动模式偏离告警方法
CN111753034A (zh) * 2020-05-20 2020-10-09 广东省国土资源测绘院 一种一站式地理大数据平台
CN111859191A (zh) * 2020-07-27 2020-10-30 平安科技(深圳)有限公司 Gis服务聚合方法、装置、计算机设备和存储介质
CN112287010B (zh) * 2020-11-10 2023-04-07 天津市测绘院有限公司 基于安卓系统的地图服务提供方法、装置、终端及存储介质
CN112380407B (zh) * 2020-11-16 2024-06-21 广州奥格智能科技有限公司 基于cim平台的场景服务聚合方法、系统及存储介质
CN114003646A (zh) * 2021-12-30 2022-02-01 南京师范大学 一种高并发实时多属性聚合地图集群服务系统
CN116521146B (zh) * 2023-04-24 2024-02-06 北京龙软科技股份有限公司 一种云gis平台的二次开发系统
CN117008896A (zh) * 2023-09-28 2023-11-07 云粒智慧科技有限公司 基于地图应用的软件系统及其构建方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101388904A (zh) * 2008-07-29 2009-03-18 北京超图软件股份有限公司 Gis服务聚合方法、装置及系统
CN102137136A (zh) * 2010-08-13 2011-07-27 华为技术有限公司 实现业务聚合Mashup业务的方法、装置和设备
CN102291460A (zh) * 2011-08-15 2011-12-21 华北电力大学 基于Web Service的信息资源访问方法
CN102316169A (zh) * 2011-09-29 2012-01-11 北京邮电大学 一种实现快速业务聚合的方法及通用业务平台

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120123674A1 (en) * 2010-11-15 2012-05-17 Microsoft Corporation Displaying product recommendations on a map

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101388904A (zh) * 2008-07-29 2009-03-18 北京超图软件股份有限公司 Gis服务聚合方法、装置及系统
CN102137136A (zh) * 2010-08-13 2011-07-27 华为技术有限公司 实现业务聚合Mashup业务的方法、装置和设备
CN102291460A (zh) * 2011-08-15 2011-12-21 华北电力大学 基于Web Service的信息资源访问方法
CN102316169A (zh) * 2011-09-29 2012-01-11 北京邮电大学 一种实现快速业务聚合的方法及通用业务平台

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
使用ArcGIS REST构建高性能WebGIS服务;周兆滨、王琴、顾亮、张永军;《制造业自动化》;20100430;第32卷(第8期);第172-173、210页 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103488776B (zh) * 2013-09-29 2017-04-05 东南大学 一种实时在线获取地图数据的方法

Also Published As

Publication number Publication date
CN103036954A (zh) 2013-04-10

Similar Documents

Publication Publication Date Title
CN103036954B (zh) 基于gis的移动信息聚合系统及其方法
US7840937B1 (en) Building software components
CN104484189B (zh) 一种应用界面的构建及设计方法
US9009006B2 (en) Generating active links between model objects
CN105051686B (zh) 用于集成的推荐的系统和方法
CN113268226B (zh) 页面数据生成方法、装置、存储介质及设备
KR102016905B1 (ko) 전력 소프트웨어 개발 플랫폼
CN104933057A (zh) 一种地图服务提供方法及装置
EP2973047A1 (en) Methods for managing applications using semantic modeling and tagging and devices thereof
CN103377168A (zh) 在通用交互层顶部提供开放数据协议服务
CN105630267A (zh) 视图界面资源管理方法和装置
CN109784708A (zh) 水行业多模型耦合计算的云服务系统
CN104102670A (zh) 绩效指标分析框架
CN103744995A (zh) 一种构建专题地图的方法及应用该方法的移动终端
CN104010045B (zh) 基于云平台的移动节点执行任务的方法
Qureshi et al. Fully integrated data communication framework by using visualization augmented reality for internet of things networks
CN104243565A (zh) 获取配置数据的方法和装置
Miravet et al. Framework for the declarative implementation of native mobile applications
CN101582153A (zh) 电网资源管理方法及系统
Nakamura et al. Proposal of web framework for ubiquitous sensor network and its trial application using NO2 sensor mounted on bicycle
US20240054145A1 (en) Object Lineage Analysis For Package Transport
CN106055578A (zh) 基于gis网络服务与富互联网应用的地理国情监测系统
Diallo et al. Context-based mobile GeoBI: enhancing business analysis with contextual metrics/statistics and context-based reasoning
CN115017185A (zh) 一种数据处理方法、装置及存储介质
KR102047510B1 (ko) 디바이스 관리 시스템 및 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160511

Termination date: 20211203

CF01 Termination of patent right due to non-payment of annual fee