lbs路线搜索服务的lbs实现.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
lbs路线搜索服务的lbs实现 1 基于位置服务的定位服务 随着通信技术的快速发展,移动通信逐渐从简单的语音通信转向复杂的通信数据,相关的短消息和手机互联网业务在中国得到了广泛使用。目前,手机已由单纯的通话工具向支持多业务的信息平台变化,其中,具有空间特性的定位服务将成为一个全新的应用领域,现已是国内外通信和软件等领域的研究热门。 LBS(Location-Based Services),即基于位置服务,又称定位服务,是通过无线终端和无线网络的配合,确定移动用户的实际地理位置(经纬度坐标数据),从而提供用户所需要的与位置相关的服务信息,是利用用户位置信息进行增值服务的一种移动通信与导航融合的服务形式。LBS的应用能非常方便、快捷地满足现代社会的人们对位置信息的需求,特别是在紧急情况下,对到达目标的快捷路径需求的满足显得尤为重要。 2 j2e和dijkkstra算法的总结 2.1 servlet组件 J2EE是Sun公司联合IBM、Oracle、BEA等大型企业级应用系统开发商于1998年共同制定的一个基于Java组件技术的企业级应用系统开发规范。该规范定义了一个多层次企业信息系统的标准平台,旨在简化和规范企业级应用系统的开发和部署。 J2EE包含众多不同技术,按其应用可分为组件技术、服务技术和通信技术。Servlet组件是J2EE中用来扩展Web服务器功能的Web组件,它基于请求/响应机制。Servlet从客户端获得请求,然后,将响应结果返回客户端。而作为J2EE平台核心的EJB组件则定义了一个可重用的组件框架来实现分布式的、面向对象的业务逻辑。EJB的主要思想是将业务逻辑与底层的系统逻辑分开,使开发者只需关心业务逻辑,而由EJB容器实现目录服务、事务处理、持久性、安全性等底层系统逻辑。 2.2 节点的最短路径产生 Dijkstra算法是一种寻找从源结点起到网络中其他各点的最短通路和最佳路径的著名算法,是目前多数系统解决最短路径问题采用的理论基础,只是不同系统对Dijkstra算法采用了不同的实现方式。该算法的主要思想是以源节点为节点0开始,按路径长度递增的次序,每次找一个节点到源节点的最短通路,然后继续一步步寻找,直到把所有节点都找到为止,从而产生最短路径。经典Dijkstra算法原理如下: 假设每个结点都有一对标号(dj,pj),其中dj是从源结点s到结点j的最短路径的长度(从结点到其本身的最短路径是零路(没有弧的路),其长度等于零);pj则是从s到j的最短路径中j的前一结点。求解从源结点s到结点j的最短路径,过程如下: 1) 初始化。源结点设置为:①ds=0,ps为空;②所有其他结点:di=∞,pi=?;③标记源结点s,记k=s,其他所有结点设为未标记的。 2) 检验从所有已标记的结点k到其直接连接的未标记的结点j的距离,并设置dj=min[dj,dk+lkj],其中,lkj是从结点k到j的直接连接距离。 3) 选取下一个结点。从所有未标记的结点中,选取dj中最小的一个i:di=min[dj,所有未标记的结点j],结点i就被选为最短路径中的一个结点,并设为已标记。 4) 找到结点i的前一结点。从已标记的结点中找到直接连接到结点i的点j*,作为前一结点,设置:i=j*。 5) 标记结点i。如果所有结点已标记,则算法已完成,否则,记k=i,转到2)再继续。 3 平台的基本组成 本文讨论的最优路线搜索服务所在的LBS平台采用JAVA实现,是一个基于J2EE构架,充分利用了EJB组件、Servlet等技术,并结合XML在数据描述上的优点的服务器程序。设计中将每个业务功能封装成一个EJB组件,很好的发挥了EJB容器的优点。因为JAVA语言具有平台独立性,因此本LBS平台可以基本上不做修改,即可运行于Windows、Linux以及其它平台上。 该平台共由三个层次组成:接口层,服务层以及数据层。其中,接口层主要是为应用服务器的开发提供一套完整的API。服务层可以分成若干个子系统,每个子系统由一系列组件组成,每个组件完成一个特定的功能,将这些功能组合起来就可以实现一个位置相关的服务。 服务层主要包括:定位适配器、地图处理适配器和内容信息服务。其中内容信息服务主要由用户管理、最优路线搜索、周边对象查找三部分组成。数据层主要是存储系统运行所需的数据,其中包括点位信息、道路网络信息、公交信息、用户信息、日志信息等等。 目前,该平台已经实现了定位、地图处理以及其他通用功能的设计。图1是用UML用例图表达的包含最优路线搜索服务的LBS系统功能图。 4 设计与实现 4.1 最优路线搜索服务 LBS系统中的最优路径搜索服务主要是以终端用户当前位置或用户指定位置为起点,以用户指定的位置或终端用户当前位置为终点,在这两点之间搜索一条符合指定条件的最优路

文档评论(0)

lgjllzx + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档