1、08届计算机科学与技术专业毕业设计论文毕业设计(论文)题 目 无线旅游手机 客户端设计与开发 专 业 计算机科学与技术 班 级 学 生 指导教师 2015 年472015届计算机科学与技术专业毕业设计(论文)摘 要随着现代科技社会的不断发展,网络技术的不断进步,从基于PC机的传统上网方式转向移动互联网已经成为一个趋势。移动互联网在经过多年的发展,正在形成稳定的市场服务格局。根据移动互联网的特点来看,手机客户端将是影响移动互联网发展的重要因素。手机客户端是指移动互联网企业为方便用户使用,而特别定制研发的特殊终端应用。本文设计实现的无线旅游客户端就是基于这样的一款实例应用的软件。用户可以通过该客户
2、端进行旅游行程、线路、景点、规划以及加密下载,并通过手机实现导航或地图引导到景点,景点内自助导游。本客户端软件系统在开发过程中基于C/S架构、J2ME平台,利用Java语言编写。主要是实现对服务器的数据请求、解析和显示的功能。本系统所访问的服务器为中国移动无线旅游服务器,故由中国移动客户给出需求说明,说明书包括了协议框架和接口说明。客户端就是通过这些接口来访问服务器的数据。关键词:无线旅游,客户端,C/SAbstractNow science and technology with the continuous development of society, the network techn
3、ology advances, from based on PCs traditional Internet way to mobile Internet has become a trend. Mobile Internet is trying to form stable market service pattern. According to the characteristics of the mobile Internet, mobile phone to see the client will affect the development of mobile. Mobile pho
4、ne a client is refers to the mobile Internet enterprise for the convenience of use, and custom made special terminal application development.This paper introduces the design of the realization of the wireless tourism client is based on such a example of application software. The user can through the
5、 client Tours, lines, planning and encryption, and through the Cell phone download cell realize navigation or map to attractions, attractions in guide self-help guide. The client software in the process of system development based on C/S structure, used J2ME platform, Java language. Mainly is to rea
6、lize the server data request, analysis and display the function. This system visits the server for China mobile wireless tourism, the description given that include the framework and interface specifications. The client is through these interfaces for accessing the server data.KEY WORDS : wireless t
7、ourism, client, C/S目录第1章 引 言11.1 课题背景11.2 国内外研究现状及趋势11.3本课题研究的意义21.4本课题的研究方法3第2章 技术基础52.1 开发语言及环境52.2 开发语言简介52.3 J2ME平台介绍72.4 JSON介绍82.5 客户端软件格式9第3章 需求分析103.1系统设计概要103.2 软件体系结构103.3软件功能模块设计与划分113.3.1 景点模块113.3.2 线路模块123.3.3 排行模块133.3.4 搜索模块133.3.5 评论模块133.3.6 功能模块图143.4 客户端系统流程图14第4章 数据需求分析164.1数据来源
8、164.2 相关规定164.2.1 HTTP请求格式164.2.2 GET与POST区别174.3 接口实例174.3.1 搜索174.3.2评论服务214.3.3提交评论23第5章 系统设计与实现255.1数据请求255.1.1 搜索255.1.2 评论275.2数据解析285.2.1 搜索285.2.2 评论305.3数据处理305.3.1 搜索305.3.2 评论315.4 UI显示325.5 UI浏览335.5.1软件启动页面335.5.2搜索345.5.3评论36第6章 软件测试396.1测试项目396.1.1搜索396.1.2评论40第7章 结论41致谢42参考文献43第1章 引
9、言1.1 课题背景随着3G和4G和4G时代的到来,手机上网已经慢慢进入人们的生活,谈到未来基于手机上的无线互联网的发展趋势究竟是手机客户端上网还是手机ap上网,目前这个阶段还很难过早的下定论。但是有一点是可以肯定的,那就是用户体验的好坏将直接决定这两者的前途命运。利用手机wap上网,第一次则需要手动输入网址,当然可以将该网页保存为标签,之后也可以做到较为方便的访问。在手机上完成输入网址或者在众多保存的标签中查找需要的网址,确实是需要一定时间的。而客户端软件,虽然需要在手机上安装才能使用,但是仍然是登入互联网最便捷的方式,扼守着移动互联网的第一入口,为企业进入营销时代开辟了一条康庄大道。目前,无
10、线互联网行业以手机客户端为主的产品很多。手机客户端为企业提供完善、便捷、多样、高效的移动营销。当中以手机客户端产生的产业发展迅猛,例如中国移动,中国联通,中国电信支持的完美e端是专门为企业提供定制手机客户端的。他通过为企业提高定制手机客户端,手机应用即可自己实现便捷、有效的移动营销。本无线旅游客户端正是由中国移动提出,由本人所签公司(东信和平智能卡股份有限公司)负责开发的软件,为用户获取信息提供便捷的方式。1.2 国内外研究现状及趋势 现在已经进入3G和4G移动互联网时代,在所有开通3G和4G的国家中,目前为止,日本和韩国是3G和4G数据业务做的最成功的。日本是全球最早提供3G和4G业务的国家
11、之一,2001年开始引入日本整个移动通信网络中,有超过85%的3G和4G用户,其中有超过88%是移动用户。韩国不论是语音市场的增值业务(如彩铃),还是手机电视、手机音乐、手机游戏和手机定位等3G和4G数据业务都发展的很好。截至2008年11月底,韩国3G和4G用户数量约为1586万人,占移动通信用户总数的34.95%,比欧美国家28%的平均水平高很多。在韩国,无线互联网的发展至今特别迅速。目前,手机客户端软件处于一个成长的阶段,内置式重要的推广方式,终端厂商为增值自身产品的附加值会内置应用软件。软件服务运营商为推广自身增值业务与终端厂商合作,终端厂商与各方厂商合作越来越紧密,随着智能手机逐渐变
12、成一个信息化终端、娱乐化终端,移动运营商的主营收入更将可能由此向数据业务及其他的增值业务靠拢。目前,虽然手机应用软件产品层出不穷,但是产品承载的业务还比较单调,主要是音视频下载、信息资讯查询、位置服务等几种业务。而本系统则属于位置服务的增值业务。1.3本课题研究的意义 大众旅游时代的到来,使旅游日益成为现代人类社会主要的休闲放松的生活方式和社会经济活动,旅游业已成为全球经济发展中势头最强劲和规模最大的产业之一,日益凸显它在国民经济中的重要地位。旅游业的发展以整个国民经济发展水平为基础并受其制约,同时又直接或间接地促进国民经济有关部门的发展。正因为旅游对于民生对于国家经济发展的重要性,建立一个无
13、线旅游系统的手机客户端对于了解景点资讯,促进旅游业发展以及提高旅游质量都是很有必要的,也使得管理信息化。顺应了社会信息化和潮流化。和传统移动互联网相比,手机客户端主要有如下优势:第一、移动(无线)互联网操作不便,内容同质化较为严重,需要客户端帮助用户简化操作。移动(无线)互联网依赖于手机载体,因此在屏幕尺寸、输入方式等方面,一直存在着限制。内容摆放混乱,且同质化严重,是一直困扰用户的问题。而客户端的使用,使得用户只需要在本地进行操作,且客户端上提供了更为友好的界面和更多的功能,用户不必费心思去输入网址和复杂的点击操作,即可得到所需信息。第二、客户端操作可以节约用户上网费用。由于用户下载了客户端
14、,可以对自己所关注的内容直接操作,而不必再每次进入下载首页,或者打开不必要的网页,减少流量费用。目前是以流量进行计算收费的移动互联网时期,减少流量对于用户而言,是很重要的问题。虽然流量包月制减轻了用户的负担,但多数用户仍会关心如何减少不必要的浪费。第三、客户端应用便于形成用户使用粘性。通过客户端的使用,用户将习惯于一种操作模式,这种应用上的习惯,将直接形成用户的粘性,减少用户流失。对于移动互联网发展而言,无疑用户是最为宝贵的财富,追求稳定的用户数量,是现阶段移动互联网企业的首要问题。1.4本课题的研究方法 本课题在开发过程中,基于中国移动提供的中国移动无线旅游平台与手机客户端软件接口规范来完成
15、客户端的开发。本项目是由本人所签订的公司给出,共由4个人来开发完成。本人参与了从需求获取到整个项目的概要设计、详细设计、代码编写以及测试的整个过程。在这个过程中,公司侧重于让新人体会一个完整项目的开发流程。而这些,应该比仅仅参与代码的开发来的更加至关重要,并且我们从中学到了很多的知识。为我从应届毕业生到职业人搭建了很好的桥梁。本人在开发无线旅游客户端的过程中,前期主要是对知识的储备,学习有关Java和J2ME的相关知识,以及软件工程中学习的开发软件的理论。并在同事的引导下参与项目的各个环节,主要是通过不断加强理论学习,由本人设计并实现公司分配的模块,并在遇到难以解决的问题时,向同事请教的方式完
16、成本次毕业设计任务。第2章 技术基础2.1 开发语言及环境操作系统:Windows XP应用技术:J2ME ,java,JSON应用服务器:由中国移动提供服务器及接口开发平台:J2ME2.2 开发语言简介J2ME平台主要是用Java进行开发。Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和java平台的总称。Java平台是由Java虚拟机(Java Virtual Machine)和Java应用编程接口(Application Programming Interface 简称API)构成。Java应用编程接口为Java应用提供了一个独立于操作系统的标
17、准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。目前常用的Java平台基于Java1.5,最近版本为Java1.7。Java是一种简单的、面向对象的、分布式的、解释型的、健壮安全的、结构中立的、可移植的、性能优异的、多线程的动态语言。Java分为三个体系JavaSE(Java2 Platform Standard Edition,Java平台标准版),JavaEE(Java 2 Pla
18、tform,Enterprise Edition,Java平台企业版),JavaME(Java 2 Platform Micro Edition,Java平台微型版)。本客户端采用J2ME平台。Java语言的主要有以下特性:(1)Java语言是简单的。它和C语言和C+很接近,但又丢去了C中很少使用和很难理解的特性。(2)Java是面向对象的。它提供了类、接口和继承等原语,为了简单起见,只支持类之间的单继承,并支持类与接口之间的实现机制。Java语言全面支持动态绑定,而C+ 语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。(3)Java语言是分布式的。Java语言支
19、持Internet的应用开发,在基本的Java应用编程接口中有一个网络应用编程接口。它提供了应用网络编程接口的类库,包括URL、URLConnection、Socket、ServerSocket等。(4)Java语言是健壮的。Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮的重要保证。对指针的丢弃是Java明智的选择。Java的安全机制使得Java更加健壮。(5)Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader
20、),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。(6)Java语言是体系结构中立的。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。(7)Java语言是可移植的。这种可移植性源于体系结构的中立性,另外Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实
21、现的。(8)Java语言是解释型的。如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在连接阶段被载入到运行环境中。(9)Java是高性能的。与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C+。(10)Java是多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用Thread(R
22、unnable) 的构造子类实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。(11)Java语言是动态的。Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级
23、。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。2.3 J2ME平台介绍 J2ME为在移动设备和嵌入式设备上运行的应用程序提供一个健壮且灵活的环境。J2ME包括灵活的用户界面、健壮的安全模式、许多内置的网络协议以及对可以动态下载联网和离线应用程序的丰富支持。记忆J2ME规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。开发J2ME程序一般不需要特别的开发工具,开发者只需要装上Java JDK及下载免费的Sun Java Wireless Toolkit 2.xx系类开发包,就可以开始编写J2ME程序、编译以及测试。2.4 JSON介绍JSON
24、(JavaScript Object Notation)是一种轻量级的数据交换格式。易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScript(Standard ECMA-2623rd Edition December 1999)的子集。JSON采用完全独力的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C+、C#、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。对象是一个无序的“名称/值对”集合。一个对象以“”(左括号)开始,“”(右括号)结束。每个“名称”后跟一个“:”(冒号);“名称/值 对”之间使用“,”(逗号)
25、分隔。 数组是值(value)的有序集合。一个数组以“”(左中括号)开始,“”(右中括号)结束。值之间使用“,”(逗号)分隔。 值(value)可以是双引号括起来的字符串(string)、数值(number)、 true、false、null、对象(object)或者数组(array)。这些结构可以嵌套。字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符(character)即一个单独的字符串(character string)。除去一些编码细节,以下描述了完整的语言。 字符串(string)与C或者Java的字符串非常相似。除去未曾使用的八进制与
26、十六进制格式,数值(number)也与C或者Java的数值非常相似。空白可以加入到任何符号之间。JSON和HTML的区别:可读性:JSON和XML的可读性可谓不相上下,一边是建议的语法,一边是规范的标签形式,很难分出胜负。 可扩展性:XML天生有很好的扩展性,JSON当然也有,没有什么是XML能扩展,JSON不能的。 编码难性:XML有丰富的编码工具,比如Dom4j、JDom等,JSON也有json.org提供的工具,但是JSON的编码明显比XML容易许多。2.5 客户端软件格式手机客户端格式,顾名思义就是手机软件的格式。目前:手机客户端软件的格式主要包括:JAR、JAD、sis、sisx、c
27、ab、mmpkg、apk共七种格式。其中,sis是S60v1v2 UIQ平台系统的客户端格式,sisx是S60v3平台系统的客户端格式,cab是SMmartphone平台系统的客户端软件格式,mmpkg是OS X packare苹果操作平台系统的客户端软件格式,apk是Google android平台系统。而本客户端的软件格式是基于J2ME平台开发的JAR格式。JAR格式支持四种手机平台,分别是Symbian、Java、Windows、Ophone平台。第3章 需求分析3.1系统设计概要无线旅游是指用户通过手机客户端软件进行旅游行程、线路、景点、规划以及加密下载,并通过手机实现导航或地图引导到
28、景点,景点内自助导游的一款位置业务。那么作为这样一款软件,提供足够的信息量是前提。目前,无线旅游网站中省内景点已达到接近600多个,省内景点数量已超过同城网、携程网、旅评网、中国风景名胜网等国内位居前列的旅游类网站。除了信息量大以外,本软件还率先提供了将旅途行程、线路、景点加密成固定格式的文件并下发到手机的服务,并在手机中提供了同互联网上基本一致的展现效果。免去了客户用纸和短彩信等方式记录的不便,实现了旅途规划随身走。出发后全程地图指导和导航,用户使用手机中的无线旅游软件或WAP方式可以在旅途中查看使用地图导引行车路线或导航服务,这对自驾车客户非常方便。并且在用户进入景区后,景区内多个景点都有
29、导游词介绍。无线旅游客户端适配275款机型,支持的平台有Windows、Symbian、JAVA、OPHONE四种手机平台,大部分适合的解析度是240*320。全球通、动感地带、神州行的用户均可使用本软件。当然,对于个别特殊的机型,会做相应的调整和适配。3.2 软件体系结构本系统是基于C/S模式开发的,即客户端/服务器结构,是20世纪80年代末逐步成长起来的一种模式,是软件体系结构的一种,C/S结构的关键在于功能的分布,一些放在客户端上执行,另一些放在服务器上执行。功能的分布在于减少计算机系统的各种瓶颈问题。如图3-1为软件总结设计的框架图:图3-1 设计框架图3.3软件功能模块设计与划分无线
30、旅游是用户通过手机客户端软件进行旅游行程、线路、景点规划及下载,并通过手机实现导航或地图引导到景点、景点内自助导游的功能。本软件的功能分为五个模块,包括景点、线路、排行、搜索和评论等,每个模块完成自己的任务。各模块之间的划分遵从高内聚,低耦合的划分原则,有利于项目开发的更好完成。以下分别论述各个模块的功能。3.3.1 景点模块景点模块主要是对景点的基本信息的介绍,用户可以查看该景点的图片、设施、线路、评论并且可以实现导航去景点的功能。以下是对景点模块功能的详细论述。景点文件下载:应用程序启动后,在网站上订购的景点,将会自动开始下载。如果订购了多个景点,将按照顺序下载。景点下载完成后,将排列在“
31、已下载”列表中,用户可以点击查看景点文件详情,对于下载队列中没有下载完成的文件,客户端提供断点续传功能。查看景点文件:用户可以查看景点文件内包含的景点简介、景点下的所有景观、景点下的所有设施、景点下的所有游览线路、景点的图片、景点在地图上的位置、景点的评论。查看景观详情:针对景点下的每个景观,可以查看景观的简介、景观图片和景观的评论。查看设施详情:针对景点下的每个设施,可以查看设施的简介、设施的图片和设施的评论。景点内导游:可以选择某条游览线路,查看该游览线路的导游图,并可以使用此游览线路进行导游,手工或自动切换到当前所在的景观,显示并朗读当前景观的文字介绍,并配有图片和评论。导航到景点:用户
32、可以使用导航功能导航或路径指引到此景点,关于导航功能的要求请参见地图功能部分。对景点、景观、设施进行评论:用户可以对景点、景观、设施发表自己的评论。3.3.2 线路模块对很多游客来说,提前规划好旅行线路至关重要。此模块可以实现线路文件下载和查看线路文件。以下是对线路模块功能的详细论述。线路文件下载:应用程序启动后,在网站上订购的线路,将会自动开始下载。如果订购了多个线路,将按照顺序下载。线路下载完成后,将排列在“已下载”列表中,用户可以点击查看线路文件详情。对于下载队列中没有下载完成的文件,客户端提供断点续传功能。查看线路文件:用户可以查看线路文件内包含的组成线路的所有景点详情、行程计划、行程
33、亮点、食宿推荐、预估费用、贴心提示。3.3.3 排行模块本模块共有四种排行机制,包括推荐排行、评论指数排行、最新发布排行、下载排行。对于感兴趣的景点,用户可以选择下载该景点,或者将该旅游景点加入收藏夹,以后希望下载的时候再从收藏夹中触发下载。3.3.4 搜索模块用户可以搜索感兴趣的景点并下载使用。主要有两种搜索方式:多种条件的复合搜索、根据景点名称或所在城市进行搜索。对于用户感兴趣的景点,用户可以选择下载该景点,或者将该旅游景点加入到收藏夹中,以后希望下载的时候再从收藏中触发下载。以下是对该模块功能的详细论述。用户可以在搜索结果列表中点击结果进行下载使用并付费。点击结果列表后,进入景点的内容索
34、引页,列出有关景点的各项信息,包括景点的简介、景点内的景观数、设施数等。用户点击查看景点的景观、设施、游览线路、图片、及使用导航去景点功能,均将提示用户下载景点,并提示收费信息。用户选择“下载”后,进入景点下载页,开始下载景点。景点下载完成后,用户将收到一条计费通知短信。3.3.5 评论模块用户可以对自己游览过的景点,设施等进行评价,包括自己的游玩感受分享给其他用户,也可以查看到其他用户的评论内容。3.3.6 功能模块图本客户端软件的功能模块图如图3-2所示:景点文件下载无线旅游手机客户端景点线路排行搜索评论查看景点文件查看景观详情查看设施详情景点内导游导航到景点线路文件下载查看线路文件推荐排
35、行评论指数最新发布免费下载下载排行最近下载多种条件符合搜索用户输入搜索发表评论查看评论索图 3-2 功能模块图3.4 客户端系统流程图本客户端软件流程图如下图3-3所示图3-3 软件流程图第4章 数据需求分析4.1数据来源由于本软件是对客户端的开发,所谓客户端的开发主要工作集中在对服务器数据的请求,处理和显示。存储数据的服务器由中国移动客户提供。客户需求以文档的形式提供给客户端开发人员,文档内容是对终端与中国移动无线旅游平台之间的通讯协议进行定义和说明。4.2 相关规定编码说明:请求、应答中的汉字采用UTF-8编码。发送方法:所有请求均采用HTTP POST方法。4.2.1 HTTP请求格式在
36、HTTP请求中,第一行必须是一个请求行(request line),用来说明请求类型、要访问的资源以及使用HTTP版本。紧接着是一个首部(header)小节,用来说明服务器要使用的附加信息。在首部之后是一个空行,在此之后可以添加任意的其他数据【称之为主体(body)】。并且,该需求文档提供了请求URL、请求参数、应答结果。4.2.2 GET与POST区别HTTP定义了与服务器交互的不同方法,最基本的方法是GET和POST。GET与POST方法有以下区别:(1) POST是被设计用来向上放东西的,而GET是被设计用来从服务器取东西的。在客户端,Get方式在通过URL提交数据,数据在URL中可以看
37、到;而POST方式,数据放置在HEADER内提交。(2) GET方法由于受到URL长度的限制,只能传递大约1024字节;POST传输的数据量大,可以达到2M,而根据微软方面的说法,微软对用Request.Form()可接受的最大数据有限制,IIS 4中为80KB字节,IIS 4 中为100KB字节。(3) 安全性问题。使用Get的时候,参数会显示在地址栏,而Post不会。所以,如果这些数据是中文数据而且是非敏感数据,那么使用get;如果用户输入的数据不是中文字符而且包含敏感数据,那么还是使用post为好。4.3 接口实例由于在本软件开发过程中,本人主要参与搜索和评论两个功能模块的开发,以下列出
38、实现这两个模块所需要的主要接口数据。4.3.1 搜索(1)终端可以使用该接口获取符合查询条件的景点列表。(2)请求URL:http:/ip:port/terminal/msg/LandScapeListAction.do(3)请求参数,如表4-1所示:表4-1 搜索请求参数序号请求参数说明示例必填1Cmd请求类型关键字ViewHeartSearchListcmd= ViewHeartSearchList2cityCode指定城市code值,省市coce值通过4.3.2接口获取或者附录5.7默认为全国city=21013Key word景点名称keyWord =丽江4isPark是否有停车场,有
39、:26,没有:27或者值信息通过4.3.3接口获取isPark=is5hotelConsume住宿消费水平,值信息通过4.3.4接口获取hotelConsume=516entertainmentType娱乐设施包括哪些,支持查询多个,多个以逗号分割,值信息通过4.3.3接口获取或者附录5.3entertainmentType=10401,104027Distance指定城市周边范围,通过4.3.3接口获取distance=1008Direction指定城市的方向数据,方向的选择项有 东:22|南:23|西:43|北:44|东北:45|西北46:|东南:47|西南:48 或者通过4.2.3接口获
40、取,查询时,要用对应ID进行查询direction=229interest根据旅游目的爱好查询,爱好元数据值信息通过4.3.3接口获取或者参见附录5.4 支持多个旅游目的爱好,使用”,”分割,且各旅游目的爱好之间是或的关系interest= 301,302,30310category根据景点分类进行搜索,值信息通过4.3.1接口获取或者参见附录5.6支持多个景点分类,使用”,”分割,且各景点分类之间是或的关系category=201,202,30311pos取得检索结果集的开始位置pos=1012cnt取得检索结果集的件数,默认值10,最大500cnt=1013picMode景点图标模式。0:
41、base64编码图片;1:ID(缺省为1)picMode =0(4)应答结果数据结构如表4-2所示:表4-2 搜索应答接口序号元素名称英文名称子元素数据类型长度相关解释0应答BODYBODY1|2|3Object-1景点信息VIEWS4|5|6|7|8|9|10Object-2符合条件总记录数SUMNUMBER-Number6符合条件总记录数3取得记录数GETNUMBER-Number6取得记录数4景点IDVIEW_ID-String30景点ID5景点名称VIEW_NAME-String50景点名称6景点所属城市CITY_NAME-String32景点所属城市7景点制作者CREATE_BY-S
42、tring30景点制作者,昵称8景点评级GRADE_LEVEL-String2景点评级9景点下载费用PRICE-String6景点下载费用,单位元10景点图标VIEW_ICON-String-景点图标ID或者BASE64码,根据请求中的picMode进行返回(5) 应答实例在对服务器请求数据时,服务器将数据以JSON格式返回给用户,对这种数据交换格式中的符号解释如下:a、 以“名称/值”的形式提供b、 多条记录用“”包含c、 每条记录用“”包含d、 记录间用“,”分割e、 名称与值用“:”分割f、 如果多个值用“#”分割以下是服务器对用户搜索请求所返回的JSON实例:SUMNUMBER: 2,
43、GETNUMBER: 2,VIEWS:VIEW_ID: 01204934,VIEW_NAME: 棋盘山,CITY_NAME: “沈阳”,CREATE_BY: 马力,GRADE_LEVEL: 3,PRICE: “2”,VIEW_ICON: “522011”,VIEW_ID: 01204935,VIEW_NAME: 故宫,CITY_NAME: “沈阳”,CREATE_BY: 马力,GRADE_LEVEL: 4,PRICE: “6”,VIEW_ICON: “3453453” 4.3.2评论服务(1)该服务支持终端用户通过手机对景点发表评论及查询景点的评论信息。(2)请求URL:http:/ip:po
44、rt/terminal/msg/CommentGetAction.do (3)请求参数如表4-3所示:表4-3 查看评论请求参数序号请求参数说明示例必填1cmd请求类型关键字Commentgetcmd=Commentget2landscapeid标识所要获取评论的对象ID如果commType字段选择noT,该字段值填写noTlandscapeid=012049343pos取得检索结果集的开始位置pos=104cnt取得检索结果集的件数,默认值10,最大500cnt=105commType评论类别,如下选择:V:对景点评论S:对景观评论F:对设施评论C:对城市评论inC:在城市评论noT:随意评论以上不区分大小写,默认为VcommType =V(4)应答结果数据结构如表4-4所示:表4-4 评论应答接口序号元素名称英文名称子元素数据类型长度相关解释0应答BODYBODY1|2|4|5Object-1被评论对象IDVIEW_ID-String30被评论对象ID2评论信息COMMENTS3Object-3单条评论信息COMMENT6|7|8|9|10Object-4符合条件总记录数SUMNUMBER-Number6符合条件总记录数5取得记录数GETNUMBER-Nu