基于Android的手机团购应用的设计与实现毕业论文.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《基于Android的手机团购应用的设计与实现毕业论文.doc》由会员分享,可在线阅读,更多相关《基于Android的手机团购应用的设计与实现毕业论文.doc(59页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 基于Android的手机团购应用的设计与实现毕业论文目录第1章绪论11.1 研究背景11.2 国发展现状与趋势11.3 相关工作21.4 论文结构安排2第2章关键技术介绍42.1 开发语言Java42.2 系统架构52.3 Android平台简介62.3.1 Android 体系结构62.3.2 Android基本组件72.3.3 Android 应用工程源码结构92.4 SSH 框架简介102.5 Quartz调度框架112.5.1 Quartz存储方式122.5.2 Quartz触发器122.5.3 Quartz调度器122.5.4 Quartz在本系统中的应用122.6 本章小结13第
2、3章系统分析143.1系统结构分析143.2业务模块分析153.2.1 注册登录模块分析153.2.2 商品信息展示模块分析163.2.3 购物车模块分析163.2.4 订单模块分析1755 / 593.3本章小结18第4章系统设计194.1客户端和服务器之间的通信设计204.1.1 连接方式的设计204.1.2 客户端服务器之间的数据处理204.2业务逻辑设计214.2.1 登录注册模块业务逻辑214.2.2 商品信息模块业务逻辑234.2.3订单模块业务逻辑244.2.4 购物车模块业务逻辑264.2.5 地址管理模块业务逻辑264.2.6 收藏夹管理模块业务逻辑264.3数据库设计274
3、.4本章小结29第5章系统实现305.1客户端和服务器之间的通信305.1.1 通信连接的建立305.1.2 通信数据的处理315.2系统功能模块的实现325.2.1 用户登录注册功能的实现325.2.2 商品信息展示功能的实现355.2.3 购物车功能的实现365.2.4 结算模块功能的实现385.2.5 收藏夹模块功能的实现395.3本章小结40第6章总结41参考文献42致谢43第1章 绪论本章主要介绍了网络团购的现状与其未来的发展趋势、智能手机操作系统的现状和它们各自所占的市场份额,以与论文的主体容和论文的结构框架。1.1 研究背景近些年来随着我国网络基础设施的不断完善、信息技术不断发展
4、,计算机网络已经在全国围基本实现了全民普与。伴随着第三方支付工具的不断发展和完善,网络购物日益成为网民日常网络生活的一项重要容。而网络团购作为网上购物的一种组成方式,具备了网络购物的所有优点,如方便、快捷、不受地域限制等,最重要的是网络团购可以享受比普通网购更低的价格,而价格优势又成为其受广大网民欢迎的最主要的核心优势,不断增长的移动互联网终端使得手机团购必然会成为继购物后又一种比较流行的购物方式。手机团购具有操作方便、简单的特点,而且经过多年的发展,第三代移动通信(3G)技术得到了广泛的承受和第四代移动通信技术(4G)的兴起,为移动终端用户带来了更快的数据传输速率,这就更加推动了手机团购必然
5、会成为又一种流行的购物方式。1.2国发展现状与趋势据易观智库最新发布的中国移动互联网数据盘点&预测专题研究报告2015数据显示,在2014年,中国移动互联网市场规模迎来增速高峰值,增长率达到183.8%,总量达13437.7亿元人民币。在用户移动化行为习惯逐渐养成的前提下,2014年移动互联网整体市场表现突出,其中,移动购物是增长的主要驱动力。虽然中国移动互联网用户规模增速有所放缓,但用户数达到7.3亿人,与2013年相比增长11.8%,继续保持着超越PC端用户量的态势1。目前针对智能手机的操作系统,主要有Apple公司的IOS、Google公司的Android、微软公司的Windows Ph
6、one和加拿大Research In Motion(简称RIM)公司的Blackberry系统。其中,Google公司的Android系统因其开放性而受到全世界人民的喜爱,占据着智能手机市场的主导地位,Android系统智能手机出货量持续增长,占总份额的近84%,并且其占有率仍处于上升趋势。1.3相关工作一个界面友好,功能合理的手机团购应用,可以吸引更多网购客户,提高自己的知名度。在一定程度上,一个友好绚丽、使用体验良好的界面可以决定一个应用的生命周期。本文接下来将从三个方面描述手机团购应用的开发过程:(1) 需求分析这是程序开发的首要任务,清晰地分析和理解问题是解决问题的前提条件,通过需求分
7、析弄清楚程序要实现的功能,实现的难点,理清各种功能模块之间的调用关系。做好这些工作之后就可以大大提供程序的开发效率,节约时间成本。(2) 客户端的设计和实现在之前需求分析结果的基础之上,依据需求分析文档中的要求,逐步实现客户端的各项功能。重点实现的容包括:客户端程序的界面设计和实现、商品图片的异步加载方式、一些较大数据的压缩和解压缩、客户端和服务器端之间的通信接口设计。(3) 与服务器端的通信通过分析研究,首先定义一种服务器端和客户端都可以承受的通信格式。其次,根据客户端的具体需求,定义一个能够跟服务器高效地进行数据交换的接口。根据之前需求分析的结果,从中抽象出各个实体所对应的类,为之后的数据
8、库设计打好基础。最后将定义在需求文档中的业务逻辑接口合理实现。在设计客户端和服务器端之间通信方式的过程中,作者使用基于JSON 的数据交换格式,该数据格式采用完全独立于具体程序语言的本文格式,采用 C 系语言的定义风格,易于程序员的编写阅读,非常适用于通信压力较轻的应用场合。1.4论文结构安排根据软件的实际开发过程,将本论文划分为六大章节。 第一章为绪论,主要介绍了研究课题的背景,相关课题在国的研究发展现状,研究实现过程中所要解决的一些重要问题和使用到的一些重要技术,以与研究过程的简略描述。第二章为关键技术介绍,主要介绍了客户端应用程序开发过程需要使用的一些关键技术和应用到的技术架构。第三章为
9、系统需求分析,该购物系统的业务逻辑一共分为六部分,用户登录模块、用户注册模块、商品展示模块、购物车模块、订单模块、其他功能模块。良好的系统需求分析能够为之后的项目开发打下良好基础。第四章为系统详细设计,包括系统的整体架构、客户端和服务器端之间的通信设计、业务设计,一共三个部分。第五章为系统实现,在之前完成的系统需求分析和系统详细设计的基础上,具体实现客户端和服务器端之间的通信以与系统各个功能模块。第六章为总结,总结了全文的主要容。第2章关键技术介绍2.1 开发语言JavaJava的诞生要归功于Sun公司的“Green”项目,该项目是为了开发一种用于管理控制电子消费产品的分布式系统。开发人员最初
10、计划使用C+开发,但是因为C+的复杂性和安全性问题,开发者最后放弃使用C+,选择在C+的基础之上开发一门新的语言Oak(java 的前身)。Oak于1995年1月更名为“java”。Java是一种面向对象的高级语言,它最大的特点就是平台无关性,这使得 Java特别适合网络环境的应用程序开发。目前Java有三种技术分支,它们分别是Java SE,JavaEE,Java ME。Java SE是Java Platform Standard Edition 的英文缩写,汉语意思是Java平台标准版,适用于开发标准的桌面程序、以与各种基础的类库。 Java EE是Sun公司推出的企业级应用程序开发平台,
11、能够让开发人员短时间开发出健壮、跨平台和易扩展的服务器端应用程序。Java ME是Sun公司推出的一种针对嵌入式电子消费产品的应用程序开发版本。Java SE是Java EE和 JavaME的基础2。Java的语法特征跟C+语言非常类似,因此有C语言基础或者C+基础的程序员可以非常快速的上手Java。但是与C+相比,Java还是有自己的鲜明特点:(1)实现了自动管理存。Java语言本身提供了GC(垃圾回收)机制,垃圾回收器可以自动的管理应用程序所在的存空间,程序员不必再为申请存和释放存劳心费神,彻底远离了可怕的存泄露问题。(2)取消了“指针”这一概念,以“引用”代替,使开发人员摆脱了复杂的存访
12、问和存管理问题,从而使java语言开发出来的程序更加安全健壮。(3)取消了“多重继承”,只支持单一继承,增加了接口概念和匿名部类,间接地实现了“多重继承”机制的功能,避免了多重继承带来的复杂性。Java 语言是一种解释型语言,跟 C、C+这种类型的语言相比,java的执行效率很低。因为Java程序的执行必须依赖于Java解释器,而java解释器的存在使 java真正实现了“一次编写,处处运行”的目标,为了达到这个目标而牺牲一部分效率还是非常值得的。另外,Java 语言具有特别强大的、易于联网的特点,因此 Java特别适合开发分布式的程序。在所有的计算机高级语言中,使用Java语言编写Socke
13、t 程序是最简单的3。2.2系统架构选择一个合理的系统架构能够很大程度上决定一个项目的开发成败。在互联网团购类项目的开发历史中存在 C/S 和 B/S 两种架构。在 B/S 体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。B/S 结构简化了客户机的工作,客户机上只需配置少量的客户端软件。服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。实际上 B/S 体系结构是把二层 C/S 结构的事务处理逻辑模块从客户机的任务中分离出来,由 Web 服务器单独组成一层来负担其任务,这样能减轻客户机的压力。这种三
14、层体系结构如图 2.1 所示。数据库Web服务器 Browse浏览器 图 2.1 B/S 三层架构示意图C/S 架构主要包括“客户端”、“中间件”、“服务端”三大部分。用户可以通过客户端应用程序向服务器发送各种请求,并接收从服务器返回的数据信息。服务器会接收来自客户端的信息并作出响应,同时负责管理系统的各种后台数据和信息,比如数据库信息。服务器要面对的一个难点就是当多个用户同时请求同一种资源时,应该如何响应这些请求。中间件是客户端程序和服务端程序沟通的桥梁,主要负责数据结构的定义和数据传输。由于Android平台的应用开发非常的便捷高效,借助一个自主的APP应用程序,可以更加高效合理的展示团购
15、商品信息,提高用户的手机团购体验,因此选择C/S架构作为本手机团购应用的系统架构。C/S 架构的示意图如图 2.2 所示。服务器端中间件客户端图 2.2 C/S 架构示意图2.3Android平台简介Android 系统基于 Linux 核,但并不是标准的 linux 核。为了让 Android 系统更加适用于移动终端设备,google 对 Linux 的核进行了各种优化和加强。 Android 平台采用了一种“软件叠层”的方式构建,它由分别是应用程序层、框架层、函数库层、运行时库、核五层构成。这种构架方式的好处就是各层之间相互独立,底层的改变不会影响上层。2.3.1 Android 体系结构
16、Android 体系结构从上到下一共分为 5 层,分别是应用程序层、应用程序框架层、函数库层、运行时库层、核层。应用程序层主要包含系统的核心应用程序,比如浏览器、薄、日历计算器等等;应用程序框架层为应用程序层提供了所需要的 API,这些 API都包含在 Google 提供的 Android SDK 中;函数库层由大量的C/C+库构成,这些库函数一般不会直接被应用程序调用,而是被应用程序框架层的API调用,而Java和C/C+之间的跨语言调用借助于JNI技术;运行时库层包括核心库和Dalvik虚拟机,核心库封装了Java语言的全部功能,Dalvik虚拟机负责安卓应用程序的运行。核层主要负责存管理
17、、进程管理、网络协议栈和驱动模型的实现,位于整个架构的最底层4。Android的体系结构图如图 2.3 所示。Application Framework(应用软件架构)ViewSystemWindowsManagerActivityManagerContentProviders软件组件 管理资源管理位置管理提示管理Android RuntimeAndroidLibrariesDalvik虚拟机器Library(函数库)SurfaceManagerMediaFrameworkSQLiteOpenGLFreeTypeWebKitSGLOpenSSLLibcLinux Kernel硬件驱动电源管理W
18、i-Fi网络内存管理相机驱动Application(应用程序)文件管理浏览器照相程序通讯录 图2.3 Android系统架构图2.3.2 Android基本组件Android 应用程序通常是由一个或者多个基本组件构成的。Android 应用程序的基本组件包括:Activity(活动)、Service(服务)、BroadcastReceiver(广播)、 ContentProvider(容提供者) 5。其中最常用也是最常用到的组件就是 Activity(活动),下面简要的介绍一下这四种组件。(1)Activity(活动)Activity 是 Android 系统中负责跟用户进行交互的组件,它为
19、Android 系统提供了可视化的用户界面。如果一个安卓应用程序包含多个用户界面,那么这个安卓应用必将包含多个 Activity。多个 Activity 将组成一个 Activity 栈,栈顶对象就是当前处在活动状态的 Activity。随着不同应用的交替运行,每个 Activity 都可能从活动状态转入非活动状态,也可能从非活动状态转入活动状态。StartingActivity 具有四种状态:活动状态、暂停状态、停止状态、销毁状态。当 Activity处于前台,用户可见并可获得焦点的时候,Activity就处在活动状态;当其他 Activity位于前台,该 Activity 依然可见但无法获
20、得焦点,该 Activity 处在暂停状态;当Activity 不可见,失去焦点时,该 Activity 处在停止状态;当 Activity所在的 Dalvik 进程完毕时,Activity 处在销毁状态。这四种状态的切换过程如图2.4 所示。(1)onCreat()(2)onStart()(3)onRestoreInstanceState()*(4)onResume()(3)onResume()(2)onCreat() (1)onRestart()(1)onSaveInstanceState()*(2)onPause()RunningonResume()(1)onSaveInstanceSt
21、ate()*(2)onStop()PausedStopped*(可选)onDestroy()or Destroyedd图 2.4 Activity生命周期(2)Service(服务)Android 系统架构中, Service和Activity具有相同的地位。Service和Activity的区别就是Service处在后台运行没有图形界面。Service 运行起来以后也会具有自己的生命周期。当需要在后台运行服务或者监控其他组件的状态变化的时候,就需要借助 Service 组件了。Service 跟 Activity 类似,也具有自己的生命周期,分别为:创建(onCreate)、开始(OnSta
22、rt)、运行(ServiceRunning)、停止(OnStop)、销毁(OnDestroy)。(3)BroadcastReceiver(广播)顾名思义,BroadcastReceiver代表的就是广播消息接收器,该组件本质上是一种全局的监听器,可以监听的系统全部的广播。从代码的实现角度来看,它非常类似于事件编程中的监听器。与普通的事件监听器不同的是, BroadcastReceiver 监听的事件源是 Android 系统中的组件,普通事件监听器监听的事程序中的对象,利用这点我们可以非常方便的实现系统中不同组件之间的通信。需要注意的是对广播的滥用会加重系统的功耗负载。(4)ContentPr
23、ovider(容提供者)Android系统中每个应用程序都运行在各自的Dalvik虚拟机中,也就是说应用程序之间是相互独立的。但是在很多情况下,应用程序之间也是需要实时地交换数据的,例如打的程序就要调用联系人应用中的。ContentProvider就是Android系统为跨应用进程之间的数据交换设定的一种标准。通常ContentProvider和ContentResolver是配套使用的,一个应用程序使用ContentProvider暴露自己的数据,使用ContentResolver访问别的应用程序的数据。2.3.3 Android 应用工程源码结构目前,Android 应用程序的主流开发平台
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Android 手机 应用 设计 实现 毕业论文
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内