基于Android平台的酒店即时查询系统设计与实现毕业论文.docx
- 文档编号:9240762
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:47
- 大小:425.17KB
基于Android平台的酒店即时查询系统设计与实现毕业论文.docx
《基于Android平台的酒店即时查询系统设计与实现毕业论文.docx》由会员分享,可在线阅读,更多相关《基于Android平台的酒店即时查询系统设计与实现毕业论文.docx(47页珍藏版)》请在冰豆网上搜索。
基于Android平台的酒店即时查询系统设计与实现毕业论文
毕业论文
基于Android平台的酒店即时查询系统设计与实现
摘要
21世纪是一个科技发展迅速的时代,随着科技的迅速发展,3G移动互联网技术迅速的在这个世纪崛起。
现在3G通信已经成为最前沿的移动通信技术。
随着互联网的移动化的加速,手机和其他移动终端的开发也迎来的新的高潮,他们已经成为了移动互联网的未来。
手机已经成为人们生活的不可缺少的工具,无论是工作、上班、坐车、旅游等等。
手机上的应用给人们的生活带来的极大的方便。
像手机地图,手机淘宝,已经成为手机上的必装应用。
因此我选择了手机端的酒店查询系统,为一些生活外出,或者旅游的人在住宿吃饭上提供方便,相信这项应用一定会被很多人所应用。
本系统采用了Windows7系统下Android2.2开发平台作为开发前段,和服务器端Web开发平台作为后台开发。
整体语言使用Java语言进行开发。
本系统包括两个方面的功能。
Android手机客户端应用,和Web服务器端,酒店管理系统。
Web服务器端实现全国酒店的管理,包括录入、审核、定位、管理,等等。
Android客户端应用包括对酒店的查找、定位、检索、提供公交线路等功能。
关键字:
Android;JavaWeb;Jsp;MySQL;酒店查询;MVC设计模式。
ABSTRACT
21centuryisaneraofrapiddevelopmentofscienceandtechnology,alongwiththequickdevelopmentofscienceandtechnology,3GmobileInternettechnologyrapidlyinthiscenturyrise.Now3Gcommunicationhasbecometotheforefrontofmobilecommunicationtechnology.WiththeadventoftheInternet,mobileacceleration,mobilephonesandothermobileterminalofthedevelopmentofnewhightidehit,theyhavebecomethefutureofmobileInternet.Cellphonesareawayoflifeindispensabletools,whetheritbework,gotoworkbycar,and,tourismandsoon.Theapplicationofthecellphonetothelifeofpeoplebroughtgreatconvenience.Likemobilephonemap,cellphonetaobao,hasbecomeamobilephonewillbeinstalledapplications.SoIchosethehotelinquiresmobilephonesystem,forsomelifegoout,ortotravelinthehotelaccommodationtoprovideconvenient,believethattheapplicationwillbeusedbymanypeople.
ThissystemUSESaWindows7systemdevelopmentplatformasadevelopmentAndroid2.2front-end,andserverWebdevelopmentplatformdevelopmentasthebackground.WholelanguageuseJavalanguagedevelopment.Thissystemincludestwoaspectsofthefunction.Androidmobilephonetheclientapplication,andtheWebserver,hotelmanagementsystem.Webserverrealizethenationalhotelmanagement,includingentry,audit,orientation,management,etc.Androidclientapplicationsincludetothehotelthesearch,orientation,retrieval,providebuslines,andotherfunctions.
Keyword:
Android;JavaWeb;Jsp;MySQL;Thehotelquery;MVCdesignmode.
1绪论
1.1引言
第一台计算的诞生,标志的我们的生活从此进入了网络化。
第一部移动电话的诞生,标志着我们的生活从此进入了移动化。
随着科技的不断发展,当网络与移动电话组合变进入了我们现在的移动互联网时代。
移动通信的发展速度非常迅猛,特别是近20年来,移动通信系统的发展及更新换代真是让人眼花缭乱。
因为,只有移动通信才能满足人们日益增长的随时随地进行信息交流的需求。
移动通信的最终目标是实现任何人可以在任何地点、任何时间与其它任何人进行任何方式的通信。
随着移动通信与Internet的飞速发展及相互融合,GPRS使无线网络高速接入到Internet成为现实,移动用户从而可以享受到Internet提供的服务。
这样,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。
3G时代,移动互联网将会超脱WAP的限制,覆盖更加广泛的应用范围,现阶段主体的互联网是基于手机终端盒移动通信网络的WAP市场。
所以做手机端的产品开发将会是以个很好的前景。
目前市场上的手机主要有IOS,Android,WP7,以成为三足鼎立的局势。
在这种局面下,通过分析,我选择了Android。
1.2手机操作系统的发展现状
PalmOS是一套专门为掌上电脑编写的操作系统,是一种轻量级、比较开放的操作系统,占用的内存非常小,允许用户在其基础上编写和修改相关软件,是支持的应用程序更加丰富多彩。
Plam在其它方面也还存在一些不足,如Plam操作系统本身不具备录音、MP3播放功能等,但是可以通过加入第三方软件或硬件设备来实现。
其代表性的产品有Palmm505、Palmm500、PalmIII等。
Symbian是一个实时性、多任务的纯32位操作系统,具有功耗低、内存占用少等特点,非常适合手机等移动设备使用,经过不断完善,可以支持GPRS、蓝牙、SyncML以及3G技术。
Windowsmobile系列操作系统是从微软计算机的Windows操作系统上变化而来的。
Windowsmobile系列操作系统功能强大,而且支持该操作系统的智能手机大多数都采用了英特尔嵌入式处理器,主频比较高,在其它硬件设置(如内存、储存卡容量等)上也采用其他操作系统的智能手机要高出许多,因此性能比较强劲,速度比较快。
Windowsmobile系列操作系统包括SmartPhone以及PocketPCPhone两种平台。
PocketPCPhone主要用于掌上电脑型的智能手机,而SmartPhone则主要为手上智能手机提供操作系统。
Linux系统是一个源代码开放的操作系统。
由于其开源性,手机制造商可以根据实际情况开放自己的Linux手机操作系统,从而也能够吸引更多的软件制造商在其上开发更多的应用软件,丰富第三方的应用。
但是Linux操作系统也还存在一些不足,集成开放环境和基于Linux的产品与PC的连接性比较差等。
1.3Android的发展背景
随着移动通信与Internet向移动终端的普及,网络和用户对移动终端的要求越来越高,而Symbian,WindowsMobile,PalmOS等手机平台过于封闭,不能很好的满足用户的需求,因此市场迫切需要一个开发性很强的平台。
经过多年的发展,第三代数字通信(3G)技术活动了广泛的接受,它为移动终端用户带来了更快的数据传输速率。
随着3G网络的使用,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。
因此,移动终端的应用软件和需要的服务将会有很大的发展空间。
Google为此与2007年11月推出了一个专为移动设备设计的软件平台——Android。
它采用Linux内核,开放手机联盟(OHA)成员可以任意使用和修改SDK包,系统的开源性使其具有良好的拓展性。
这款软件包括了操作系统、用户界面和应用程序,即智能手机工作所需要的全部软件。
Android的最大特点是其开放性体系架构,不仅具有非常好的开发、调试环境,而且还支持各种可扩展的用户体验,包括丰富的图形组件、多媒体支持功能以及强大的浏览器。
因此,对于软件从业人员来说,Android平台具有无限的吸引力。
Android是一套真正意义上的开发性的移动设备综合平台,它包括操作系统、中间件和一些关键的平台应用。
Android是由Linux+Java构成的开源软件,允许所有厂商和个人在其基础上进行开发。
Android平台的开放性等特点既能促进技术(包括平台本身)的创新,又有助于降低开发成本,还可以是运营商能非常方便地制定自己的特色化的产品。
因此,它具有很大的市场发展潜力。
2.需求分析
2.1研究目标
(1)了解Android应用程序的设计和开发过程;
(2)使用多种组件进行Android平台3G手机酒店查询系统。
本软件是基于Eclipse的开发环境,依托Android平台加上JavaWeb服务器开发的酒店查询系统,希望成为人们外出的必备手机软件。
2.2需求分析
本软件主要分为两部分,一,JavaWeb服务器端,实现对酒店的管理,包括酒店的详细信息,类型,房间介绍,地理位置等。
二,手机显示端,手机端是一个AppWidget应用程序,启动程序后可以进行三种方式的酒店查找,身边搜索,地图搜索,定点搜索,每种搜索都会有酒店的列表显示和地图显示,可以进行浏览和详细阅读,还可以地图显示,查找行走路线等等。
从上面的描述中可以基本了解软件的功能需求:
(1)启动AppWidget应用程序;
(2)设置界面:
对要进行酒店的列表显示和地图坐标显示;
(3)显示界面:
酒店名称,简介,星级,分数,服务等。
(4)详细界面:
酒店的各方面的详情,图片,房间类型介绍,地图显示,提供行走路线等。
2.3性能分析
程序响应速度快、安全性高、3G时代信息处理速度快。
2.4经济可行性分析。
本系统是基于Android平台使用Java语言进行开发的软件,Android的开放性给我们带来了很大的方便。
硬件支持普通电脑即可。
3.Android的架构分析
Android是一个移动设备的软件平台,是由Linux+Java构成的开源软件,它提供包括SDK、KeyApps、Middleware、LinuxKernel四个部分在内的全套手机软件方案。
它开放了基于Linux内核以上的开发工具,从而保证了内容的可移植性和多样性。
Android平台为我们开发应用程序提供了一套很好的框架,我们可以在这个平台的基础上开发不同的应用程序,也可以开发新的组件供应用程序调用。
3.1Android特征
应用框架:
用于开发可重用、可替代的组件。
Dalvik虚拟机:
Android采用的Java虚拟机是自主开发的代号为Dalvik的虚拟机技术,在保证API方面兼容的同时Dalvik针对移动手机进行了大幅优化,占用资源更小,运行效率更高。
内嵌浏览器:
基于开源的浏览器网页排版引擎WebKit。
优化的图形:
强大的自定义二维图形库。
基于OpenGLES1.0标准的3D图形功能,在移动3D开发中有着至关重要的地位。
SQLite数据库:
SQLite提供结构化的数据存储。
它是一款轻型免费的且开源的数据库,它的设计目标是嵌入式的,它占用的资源非常低、需要的内存空间少、处理速度比较快和支持事务处理功能等。
多媒体支持:
支持各种通用的音频、视频和静态图像格式,如MP3、JPG、PNG等。
OpenCore是Android多媒体框架的核心,所有Android平台的音频和视频采集、播放的操作都是通过它来实现的。
通过OpenCore,程序员可以方便快速的开发出想要的多媒体应用程序。
GSM技术:
(依赖硬件)GlobalSystemforMobileCommunications,全球通讯系统,俗称“全球通”,是第二代移动通信技术,其开发目的是让全球各地可以共同使用一个移动电话网络标准,让用户使用一部手机就能行遍全球。
蓝牙,EDGE,3GandWiFi:
(依赖硬件)蓝牙和Wi-Fi都是一种短距离的无线连接技术,在短距离内可以实现话音和数据的无线传输。
EDGE(EnhancedDataRateforGSMEvolution),是增强型数据速率GSM演进技术。
Cameram,GPS,compass,andaccelerometer:
(依赖硬件)GPS(GlobalPositioningSystem),即全球定位系统。
它是由一个由覆盖全球的24颗卫星组成的卫星系统。
Compass是一个开放源码的Java搜索引擎框架。
强大的开发环境:
包括一个设备模拟器,调试工具,内存和性能检测,以及EclipseIDE的开发插件。
Eclipse是个集成开放环境。
3.2Android架构
Android的架构是由Linux内核、C/C++函数库、Dalvik虚拟机、应用框架以及关键应用程序构成的。
通过编译基于框架的应用程序可以降低开发负荷。
应用软件原则上是在DalvikVM上运行的。
3.3关键应用程序
Android会同一系列核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。
所有的应用程序都是使用JAVA语言编写的。
3.4.应用程序框架
开发人员也可以完全访问核心应用程序所使用的API框架。
该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。
同样,该应用程序重用机制也使用户可以方便的替换程序组件。
隐藏在每个应用后面的是一系列的服务和系统,其中包括;
丰富而又可扩展的视图(Views),可以用来构建应用程序,它包括列表(lists),网格(grids),文本框(textboxes),按钮(buttons),甚至可嵌入的web浏览器。
内容提供器(ContentProviders)使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据
资源管理器(ResourceManager)提供非代码资源的访问,如本地字符串,图形,和布局文件(layoutfiles)。
通知管理器(NotificationManager)使得应用程序可以在状态栏中显示自定义的提示信息。
活动管理器(ActivityManager)用来管理应用程序生命周期并提供常用的导航回退功能。
3.5Android开发环境介绍
Android的上层应用程序是用Java语言开发,同时还需要基于Dalvik虚拟机,所以,Google公司推荐使用主流的Java继承开发环境Eclipse。
只有Eclipse还不够,因为是使用Java语言进行开发,还应该有由SUN公司提供的JavaSDK(其中包括JRE:
JavaRuntimeEnvironment)。
此外,Android的应用程序开发和Java开发有较大区别的,所以还需要有Google提供的AndroidSDK。
同时,还需要在Eclipse安装ADT,为Android开发提供开发工具的升级或者变更,是Eclipse下开发工具的升级下载的工具。
简言之,需要以下软件,才能搭建Android开发环境,从而进行Android应用程序的开发。
(1)JavaSDK
(2)Eclipse,
(3)AndroidSDK
(4)ADT
(5)SVN
3.6Android开发平台搭建
3.6.1、AndroidSDK安装。
在AndroidDevelopers下载android-sdk_r05-windows.zip,下载完成后解压到任意路径。
运行SDKSetup.exe,点击AvailablePackages。
如果没有出现可安装的包,请点击Settings,选中Misc中的"Forcehttps:
//..."这项,再点击AvailablePackages。
选择希望安装的SDK及其文档或者其它包,点击InstallationSelected、AcceptAll、InstallAccepted,开始下载安装所选包
在用户变量中新建PATH值为:
AndroidSDK中的tools绝对路径(本机为D:
\AndroidDevelopandroid-sdk-windows\tools)。
打开EclipseIDE,进入菜单中的"Help"->"InstallNewSoftware"点击Add...按钮,弹出对话框要求输入Name和Location:
Name自己随便取,Location输入http:
//dl-with后的下拉列表中选择我们刚才添加的ADT,我们会看到下面出有DeveloperTools,展开它会有AndroidDDMS和AndroidDevelopmentTool,勾选他们,然后就是按提示一步一步next。
完成之后:
选择Window>Preferences...在左边的面板选择Android,然后在右侧点击Browse...并选中SDK路径,本机为:
D:
AndroidDevelopandroid-sdk-windows点击Apply、OK。
配置完成。
3.6.2.创建AVD
为使Android应用程序可以在模拟器上运行,必须创建AVD。
在Eclipse中。
选择Windows>AndroidSDKandAVDManager。
点击左侧面板的VirtualDevices,再右侧点击New。
填入Name,选择Target的API,SDCard大小任意,Skin随便选,Hardware目前保持默认值。
点击CreateAVD即可完成创建AVD。
点击左侧面板的AvailablePackages,在右侧勾选,确定。
3.6.3.HelloWorld
通过File->New->Project菜单,建立新项目"AndroidProject"。
然后填写必要的参数,得到第一个Android程序。
4.程序设计与开发
本系统开发属于一个正常项目的开发流程,包括数据库的分析设计与实现,JavaWeb服务器端的程序设计与实现,最后是手机端的项目设计与实现。
是一个顺序流程。
4.1数据库的设计与现实。
4.1.1数据库的设计
一个好的程序开发最基础的就是数据库的设计,好的数据库设计能满足应用系统的业务需求,准确的表达数据间关系。
保证数据的准确性和一致性,通过主外键、非空、限制、唯一索引等保证数据的健壮。
可以提高数据的读取速度,提高查询效率。
所以建立一个好的数据库我们要精心策划。
数据库的设计一般步骤:
如图
(1)
图
(1)
(1).需求分析。
确定建立数据库的目的,这有助于确定数据库保存哪些信息。
(2).确定需要的表。
可以着手将需求信息划分成各个独立的实体。
(3).确定所需字段。
确定在每个表中要保存哪些字段,确定关键字,字段中要保存数据的数据类型和数据的长度。
通过对这些宇段的显示或计算应能够得到所有需求信息。
(4).确定联系。
对每个表进行分析,确定一个表中的数据和其他表中的数据有何联系。
必要时可在表中加入一个字段或创建一个新表来明确联系。
(5).设计求精。
对设计进一步分析,査找其中的错误;创建表,在表中加入几个示例数据记录,考察能否从表中得到想要的结果。
需要调整设计。
4.1.2数据库的实现
经过小组讨论对开发环境和系统架构的分析,决定使用MySQL数据库,他的特点是数据库小,连接库方便,便于移植。
根据酒店的信息和程序的要求定为数据库建立7个表。
下面是几个主要表的信息。
1、hotel表:
用来存储酒店信息。
字段名称
类型
字段含义
备注
Hno
Int
酒店的ID号(唯一)
用于确定唯一的酒店
Hname
Varchar
酒店的名称
Intro
Varchar
酒店简介
Address
Varchar
酒店地址
Tel
Varchar
酒店联系方式
Type
Varchar
酒店类型
Sevice
Varchar
酒店的特色服务
Comm_flag
Int
评分方式
Hand_comm
Float
如果是手动评分为分数
Latitude
Double
精度坐标
longitude
Double
维度坐标
Code
int
省市码
便于不同省市检索
Ischeck
int
是否审核过
通过审核的酒店才可以显示
Lowprice
int
最低价
用于检索
Dateline
varchar
添加时间
执行的SQL语句:
CREATETABLE`hotel`(
`hno`int(11)NOTNULLAUTO_INCREMENT,
`hname`varchar(50)DEFAULTNULL,
`intro`varchar(1000)DEFAULTNULL,
`address`varchar(300)DEFAULTNULL,
`tel`varchar(20)DEFAULTNULL,
`type`varchar(20)DEFAULTNULL,
`sevice`varchar(50)DEFAULTNULL,
`comm_flag`int(11)DEFAULTNULL,
`hand_comm`float(15,10)DEFAULTNULL,
`latitude`double(15,10)DEFAULTNULL,
`longitude`double(15,10)DEFAULTNULL,
`code`int(11)DEFAULTNULL,
`ischeck`int(11)DEFAULTNULL,
`lowprice`int(5)DEFAULTNULL,
`dateline`varchar(255)DEFAULTNULL,
PRIMARYKEY(`hno`)
)ENGINE=InnoDBAUTO_INCREMENT=87DEFAULTCHARSET=utf8;
表的建立如图:
(2)
图
(2)
2、room表:
用于存对应酒店的房间的信息。
字段名称
类型
字段含义
备注
Id
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Android 平台 酒店 即时 查询 系统 设计 实现 毕业论文
![提示](https://static.bdocx.com/images/bang_tan.gif)