基于Android平台的酒店系统设计与实现开题报告
2020-04-15 18:08:42
1. 研究目的与意义(文献综述包含参考文献)
文 献 综 述 基于Android平台的酒店系统设计与实现 摘 要 21世纪是一个科技发展迅速的时代随着科技的迅速发展3G移动互联网技术迅速的在这个世纪崛起。现在3G通信已经成为最前沿的移动通信技术。随着互联网的移动化的加速手机和其他移动终端的开发也迎来的新的高潮他们已经成为了移动互联网的未来。手机已经成为人们生活的不可缺少的工具无论是工作、上班、坐车、旅游等等。手机上的应用给人们的生活带来的极大的方便。像手机地图手机淘宝已经成为手机上的必装应用。因此我选择了手机端的酒店查询系统为一些生活外出或者旅游的人在住宿吃饭上提供方便相信这项应用一定会被很多人所应用。 本系统采用了Windows7系统下Android2.2开发平台作为开发前段和服务器端Web开发平台作为后台开发。整体语言使用Java语言进行开发。本系统包括两个方面的功能。Android手机客户端应用和Web服务器端酒店管理系统。Web服务器端实现全国酒店的管理包括录入、审核、定位、管理等等。Android客户端应用包括对酒店的查找、定位、检索、提供公交线路等功能。 关键字AndroidJavaWebJspTSC基本原理 1绪论 1.1引言 第一台计算的诞生,标志的我们的生活从此进入了网络化。第一部移动电话的诞生,标志着我们的生活从此进入了移动化。随着科技的不断发展,当网络与移动电话组合变进入了我们现在的移动互联网时代。移动通信的发展速度非常迅猛,特别是近20年来,移动通信系统的发展及更新换代真是让人眼花缭乱。因为,只有移动通信才能满足人们日益增长的随时随地进行信息交流的需求。移动通信的最终目标是实现任何人可以在任何地点、任何时间与其它任何人进行任何方式的通信。 随着移动通信与Internet的飞速发展及相互融合,GPRS使无线网络高速接入到Internet成为现实,移动用户从而可以享受到Internet提供的服务。这样,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。3G时代,移动互联网将会超脱WAP的限制,覆盖更加广泛的应用范围,现阶段主体的互联网是基于手机终端盒移动通信网络的WAP市场。所以做手机端的产品开发将会是以个很好的前景。目前市场上的手机主要有IOS,Android,WP7,以成为三足鼎立的局势。在这种局面下,通过分析,我选择了Android。 1.2手机操作系统的发展现状 Palm OS是一套专门为掌上电脑编写的操作系统,是一种轻量级、比较开放的操作系统,占用的内存非常小,允许用户在其基础上编写和修改相关软件,是支持的应用程序更加丰富多彩。Plam 在其它方面也还存在一些不足,如Plam操作系统本身不具备录音、MP3播放功能等,但是可以通过加入第三方软件或硬件设备来实现。其代表性的产品有Palm m505、Palm m500、Palm III等。 Symbian是一个实时性、多任务的纯32位操作系统,具有功耗低、内存占用少等特点,非常适合手机等移动设备使用,经过不断完善,可以支持GPRS、蓝牙、SyncML以及3G技术。 Windows mobile系列操作系统是从微软计算机的Windows操作系统上变化而来的。Windows mobile系列操作系统功能强大,而且支持该操作系统的智能手机大多数都采用了英特尔嵌入式处理器,主频比较高,在其它硬件设置(如内存、储存卡容量等)上也采用其他操作系统的智能手机要高出许多,因此性能比较强劲,速度比较快。Windows mobile系列操作系统包括SmartPhone以及Pocket PC Phone两种平台。Pocket PC Phone主要用于掌上电脑型的智能手机,而SmartPhone则主要为手上智能手机提供操作系统。 Linux系统是一个源代码开放的操作系统。由于其开源性,手机制造商可以根据实际情况开放自己的Linux手机操作系统,从而也能够吸引更多的软件制造商在其上开发更多的应用软件,丰富第三方的应用。但是Linux操作系统也还存在一些不足,集成开放环境和基于Linux的产品与PC的连接性比较差等。 1.3 Android的发展背景 随着移动通信与Internet向移动终端的普及,网络和用户对移动终端的要求越来越高,而Symbian,Windows Mobile,PalmOS等手机平台过于封闭,不能很好的满足用户的需求,因此市场迫切需要一个开发性很强的平台。经过多年的发展,第三代数字通信(3G)技术活动了广泛的接受,它为移动终端用户带来了更快的数据传输速率。随着3G网络的使用,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。因此,移动终端的应用软件和需要的服务将会有很大的发展空间。Google为此与2007年11月推出了一个专为移动设备设计的软件平台#8212;#8212;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服务器端,实现对酒店的管理,包括酒店的详细信息,类型,房间介绍,地理位置等。二,手机显示端,手机端是一个App Widget应用程序,启动程序后可以进行三种方式的酒店查找,身边搜索,地图搜索,定点搜索,每种搜索都会有酒店的列表显示和地图显示,可以进行浏览和详细阅读,还可以地图显示,查找行走路线等等。 从上面的描述中可以基本了解软件的功能需求: (1) 启动App Widget应用程序; (2) 设置界面:对要进行酒店的列表显示和地图坐标显示; (3) 显示界面:酒店名称,简介,星级,分数,服务等。 (4) 详细界面:酒店的各方面的详情,图片,房间类型介绍,地图显示,提供行走路线等。 2.3 性能分析 程序响应速度快、安全性高、3G时代信息处理速度快。 2.4 经济可行性分析。 本系统是基于Android平台使用Java语言进行开发的软件,Android的开放性给我们带来了很大的方便。硬件支持普通电脑即可。 3.Android的架构分析 Android是一个移动设备的软件平台,是由Linux Java构成的开源软件,它提供包括SDK、Key Apps、Middleware、Linux Kernel四个部分在内的全套手机软件方案。它开放了基于Linux内核以上的开发工具,从而保证了内容的可移植性和多样性。Android平台为我们开发应用程序提供了一套很好的框架,我们可以在这个平台的基础上开发不同的应用程序,也可以开发新的组件供应用程序调用。 3.1Android特征 应用框架:用于开发可重用、可替代的组件。 Dalvik虚拟机:Android采用的Java虚拟机是自主开发的代号为Dalvik的虚拟机技术,在保证API方面兼容的同时Dalvik针对移动手机进行了大幅优化,占用资源更小,运行效率更高。 内嵌浏览器:基于开源的浏览器网页排版引擎WebKit。 优化的图形:强大的自定义二维图形库。基于OpenGL ES 1.0标准的3D图形功能,在移动3D开发中有着至关重要的地位。 SQLite数据库:SQLite提供结构化的数据存储。它是一款轻型免费的且开源的数据库,它的设计目标是嵌入式的,它占用的资源非常低、需要的内存空间少、处理速度比较快和支持事务处理功能等。 多媒体支持:支持各种通用的音频、视频和静态图像格式,如MP3、JPG、PNG等。Open Core是Android多媒体框架的核心,所有Android平台的音频和视频采集、播放的操作都是通过它来实现的。通过Open Core,程序员可以方便快速的开发出想要的多媒体应用程序。 GSM技术:(依赖硬件)Global System for Mobile Communications,全球通讯系统,俗称”全球通”,是第二代移动通信技术,其开发目的是让全球各地可以共同使用一个移动电话网络标准,让用户使用一部手机就能行遍全球。 蓝牙,EDGE,3G and WiFi:(依赖硬件)蓝牙和Wi-Fi都是一种短距离的无线连接技术,在短距离内可以实现话音和数据的无线传输。EDGE(Enhanced Data Rate for GSM Evolution),是增强型数据速率GSM演进技术。 Cameram,GPS,compass,andaccelerometer:(依赖硬件)GPS(Global Positioning System),即全球定位系统。它是由一个由覆盖全球的24颗卫星组成的卫星系统。Compass是一个开放源码的Java搜索引擎框架。 强大的开发环境:包括一个设备模拟器,调试工具,内存和性能检测,以及Eclipse IDE的开发插件。Eclipse是个集成开放环境。 3.2 Android架构 Android的架构是由Linux内核、C/C 函数库、Dalvik虚拟机、应用框架以及关键应用程序构成的。通过编译基于框架的应用程序可以降低开发负荷。应用软件原则上是在DalvikVM上运行的。 3.3关键应用程序 3.4.应用程序框架 3.5Android开发环境介绍 Android的上层应用程序是用Java语言开发,同时还需要基于Dalvik虚拟机,所以,Google公司推荐使用主流的Java继承开发环境Eclipse。只有Eclipse还不够,因为是使用Java语言进行开发,还应该有由SUN公司提供的Java SDK(其中包括JRE:Java Runtime Environment)。此外,Android的应用程序开发和Java开发有较大区别的,所以还需要有Google提供的Android SDK。同时,还需要在Eclipse安装ADT,为Android开发提供开发工具的升级或者变更,是Eclipse下开发工具的升级下载的工具。 简言之,需要以下软件,才能搭建Android开发环境,从而进行Android应用程序的开发。 (1) Java SDK (2) Eclipse, (3) Android SDK (4) ADT (5) SVN 3.6 Android开发平台搭建 3.6.1、Android SDK安装。 在Android Developers下载android-sdk_r05-windows.zip,下载完成后解压到任意路径。运行SDK Setup.exe,点击Available Packages。如果没有出现可安装的包,请点击Settings,选中Misc中的"Force https://..."这项,再点击Available Packages 。 选择希望安装的SDK及其文档或者其它包,点击Installation Selected、Accept All、Install Accepted,开始下载安装所选包 在用户变量中新建PATH值为:Android SDK中的tools绝对路径(本机为D:AndroidDevelopandroid-sdk-windows ools)。 打开 Eclipse IDE,进入菜单中的 "Help" -gt; "Install New Software"点击Add...按钮,弹出对话框要求输入Name和Location:Name自己随便取,Location输入http://dl-ssl.google.com/android/eclipse。确定返回后,在work with后的下拉列表中选择我们刚才添加的ADT,我们会看到下面出有Developer Tools,展开它会有Android DDMS和Android Development Tool,勾选他们,然后就是按提示一步一步next。完成之后: 选择Window gt; Preferences...在左边的面板选择Android,然后在右侧点击Browse...并选中SDK路径,本机为: D:AndroidDevelopandroid-sdk-windows点击Apply、OK。配置完成。 3.6.2.创建AVD 为使Android应用程序可以在模拟器上运行,必须创建AVD。在Eclipse中。选择Windows gt; Android SDK and AVD Manager。点击左侧面板的Virtual Devices,再右侧点击New。填入Name,选择Target的API,SD Card大小任意,Skin随便选,Hardware目前保持默认值。点击Create AVD即可完成创建AVD。点击左侧面板的Available Packages,在右侧勾选,确定。 3.6.3.HelloWorld 通过File -gt; New -gt; Project 菜单,建立新项目"Android Project"。然后填写必要的参数,得到第一个Android程序。 参考文献 [1] 李刚,疯狂java讲义/李刚著.北京电子工业出版社,2008年10月1日第1版. [2] 李刚,疯狂Android讲义/李刚著.北京电子工业出版社,2011.7. [3] 张利国,代闻,龚海平.Android移动开发案例详解[M].北京:人民邮电出版社,2010. [4] 张利国,龚海平,王植萌 . Android移动开发入门与进阶 [M].北京:人民邮电出版社, 2009. [5] 张利国 , 代闻 , 龚海平 . Android 移动开发案例详解 .北京: 人民邮电出版社 , 2010 . [6] 韩超,梁泉 .Android系统原理及开发要点详解 [M].北京 :电子工业出版社 , 2010. [7] 伯内特 , 张波 . Android 基础教程.北京: 人民邮电出版社 , 2009 . [8] 余志龙 . Google Android SDK 开发范例大全.北京: 人民邮电出版社 , 2009 . [9] 差沙,地狱男爵.用Android开发手机应用[J].程序员,2008(1). [10] 黄晓韩.JSP环境下的SQL注入防范[J].网络与信息,2010,(8):56. [11] 陈学平.Dreamweaver8.0 ASP动态网站开发案例教程[M].北京:电子工业出版社,2007.. [12] 夏红星.SQL Server数据传输协议分析[J].计算机与网络,2010,(14):53-55. [13] 王振辉.安装配置Tomcat服务器[J].网管员世界,2010,(14):43-44. [14] 赵根朝.基于测试流程的软件测试设计[J].计算机与网络,2010,(14):45-48. [15] 公磊,周聪.基于Android的移动终端应用程序开发与研究[J].计算机与现代化,2008(8). |
2. 研究的基本内容、问题解决措施及方案
2.本课题要研究或解决的问题和拟采用的研究手段(步骤): | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
一、(1)了解Android应用程序的设计和开发过程; (2)本课题要研究或解决的问题:本课题是基于安卓系统的第三方软件,主要在于研究关于酒店的手机搜索与预订,能实现实时查询,便于人们在方便的情况下及时订到酒店的位置。 (3) 使用多种组件进行Android 平台3G手机酒店管理软件的开发。 本软件是基于Eclipse的开发环境,依托Google位置数据建立酒店信息数据库,开发出了针对Android平台的手机查询酒店等系统。 二、拟采用的研究手段(步骤) 本系统开发属于一个正常项目的开发流程,包括数据库的分析设计与实现, Java Web服务器端的程序设计与实现,最后是手机端的项目设计与实现。是一个顺序流程。 1、安装JAVA运行环境JRE,开发环境SDK以及SQL serve 2008,C 等软件 2、 Android开发平台搭建Android开发平台搭建步骤: ①首先到http://www.eclipse.org/downloads/下载Eclipse集成开发环境并且解压,这里推荐下载Java EE 集成版本,可以为平台的搭建省下不少工作。接着再去http://java.sun.com/javase/downloads/index.jsp 站点下载SDK后安装,下载http://dl.google.com/android/android-sdk-windows-1.5_r1.zip,Android SDK1.5后解压。第一步下载工序就结束了。 ②双击Eclipse解压后目录中的eclipse.exe然后启动,选择Eclipse菜单中的Help-gt; Install New Software-gt; 选项卡上的Available Software,点击右侧的”Add”输入http://dl-ssl.google.com/android/eclipse/后确定,然后在”Work with”下拉菜单中选择刚才输入的网址。过一会就会出现一个Developer Tools选项,勾上以后点击Next以后Eclipse会自动网上查找Android 开发工具插件,然后找到Android DDMS和Android Development Tools,选中这两个点击Finish,Eclipse就会自动下载并安装Android插件了,最后会提示重启Eclipse。 ③重启后选择Eclipse菜单中的Windows-gt; Preferences 在左侧的Android项目中SDK Location中填入Android SDK解压后的目录,然后点击Apply。 ④在WindowsXP的系统变量中的path变量中添加一个值,该值指向解压后 Android SDK目录下的tools文件夹。 2、用户界面设计: 根据需求分析可以知道,应用程序应包含三个主要的用户界面,这里需要进一步分析每个用户界面中应该包括哪些显示内容。 在”设置页面”中,需要对要显示酒店客房信息及更新房间进行设置。在”显示页面”中,显示当前的房间使用状况,包括房号、人数、天数等信息。在”详细页面”动态显示当前客房情况,还要显示未来四天的客房情况。 3、数据库设计:用SQL设计功能模块,数据字典,ER图,总体ER图,系统数据表,系统流程图等。 本软件中有两部分数据需要存储,一个是显示页面的数据,另一个详细页面的数据。系统的实现要有:用户登录,系统主界面,修改密码,人员管理,餐桌管理,菜单管理,酒店管理,修改酒店信息,营业额等功能。 下面是几个主要表的信息。 (1)hotel表:用来存储酒店信息。
执行的SQL语句: CREATE TABLE `hotel` ( `hno` int(11) NOT NULL AUTO_INCREMENT, `hname` varchar(50) DEFAULT NULL, `intro` varchar(1000) DEFAULT NULL, `address` varchar(300) DEFAULT NULL, `tel` varchar(20) DEFAULT NULL, `type` varchar(20) DEFAULT NULL, `sevice` varchar(50) DEFAULT NULL, `comm_flag` int(11) DEFAULT NULL, `hand_comm` float(15,10) DEFAULT NULL, `latitude` double(15,10) DEFAULT NULL, `longitude` double(15,10) DEFAULT NULL, `code` int(11) DEFAULT NULL, `ischeck` int(11) DEFAULT NULL, `lowprice` int(5) DEFAULT NULL, `dateline` varchar(255) DEFAULT NULL, PRIMARY KEY (`hno`) ) ENGINE=InnoDB AUTO_INCREMENT=87 DEFAULT CHARSET=utf8; (2)room表:用于存对应酒店的房间的信息。
执行SQL语句: CREATE TABLE `room` ( `_id` int(11) NOT NULL AUTO_INCREMENT, `room_type` varchar(20) DEFAULT NULL, `room_size` float DEFAULT NULL, `former_price` float DEFAULT NULL, `now_price` float DEFAULT NULL, `hno` int(11) DEFAULT NULL, PRIMARY KEY (`_id`), KEY `酒店房间` (`hno`), CONSTRAINT `酒店房间` FOREIGN KEY (`hno`) REFERENCES `hotel` (`hno`) ON DELETE CASCADE ON UPDATE NO ACTION ) ENGINE=InnoDB AUTO_INCREMENT=60 DEFAULT CHARSET=utf8; (3)commentTable表,用于存储客户对酒店的评论信息。
执行SQL语句: CREATE TABLE `room` ( `_id` int(11) NOT NULL AUTO_INCREMENT, `room_type` varchar(20) DEFAULT NULL, `room_size` float DEFAULT NULL, `former_price` float DEFAULT NULL, `now_price` float DEFAULT NULL, `hno` int(11) DEFAULT NULL, PRIMARY KEY (`_id`), KEY `酒店房间` (`hno`), CONSTRAINT `酒店房间` FOREIGN KEY (`hno`) REFERENCES `hotel` (`hno`) ON DELETE CASCADE ON UPDATE NO ACTION ) ENGINE=InnoDB AUTO_INCREMENT=60 DEFAULT CHARSET=utf8; 数据库设计结束后,就是程序的开发,由于手机端开发以来与后台服务器端,所以先开发J2EE服务器端的酒店管理。 4、J2EE服务器端酒店管理的程序设计与实现。 详细设计阶段就是把解决方法具体化,设计出详细规格说明,包含必要的细节,程序员可以根据它们写出实际的程序代码,详细设计也称模块设计,在这个阶段将详细地设计每个模块具体的实现功能。 5、JAVA程序编程,设计,仿真,实现。 三、研究进度安排 第一阶段:2013-1-10#8212;#8212;2013-2-20:查阅书籍,到网上了解安卓系统的现状,并安装好和学习JAVA有关的软件使用,初步了解安卓酒店系统的设计。 第二阶段:2013-2-20#8212;#8212;2013-2-28:撰写提报告,拟定系统设计流程,并制定一个大的研究框架,方便以后的研究,对报告修改。 第三阶段:2013-2-28#8212;#8212;2013-3-20:系统设计,与老师咨询设计时的要点。 第四阶段:2013-3-20#8212;#8212;2013-4-20:系统仿真,用实验的方法把结果演示出来得到设计的软硬件作品。 第五阶段:2013-4-20#8212;#8212;2013-5-10:撰写毕业论文初稿。 第六阶段:2013-5-10#8212;#8212;2013-5-20:撰写毕业论文终稿。 第七阶段:2013-5-20#8212;#8212;2013-5-31:提交所有毕业设计电子材料与打印稿。 第六阶段:2013-6-10#8212;#8212;2013-6-16:答辩。 |