-校园自助点餐APP数据管理系统的研究.docx
《-校园自助点餐APP数据管理系统的研究.docx》由会员分享,可在线阅读,更多相关《-校园自助点餐APP数据管理系统的研究.docx(21页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 校园自助点餐APP数据管理系统的研究姓名:陈文旭 学号:20150320416 班级:计算机科学与技术3+2班1. 绪论1.1 背景随着时代的高速发展,人类已经迈入了信息时代。计算机通讯发展飞快,移动互联网普及迅速,电子信息技术已经全面地改变了人类生活的各个方面。信息化,智能化已成为当今社会发展的趋势。伴随着科学技术和社会经济水平的不断进步提高,智能手机发展迅速,普及率越来越高,各种手机应用程序也越来越多,极大地影响人类的生活工作及娱乐等方面。由于智能手机和手机软件愈加快速的发展和广泛的运用,目前“手机App”已成为广受社会关注的焦点,各种手机应用已经成为人们进行信息交流的主要工具。在当前各
2、种系统手机争相斗艳的时期, Android操作系统借助其良好的优化程度和极高的开放性,获得了广大消费者的青睐,占有极大的消费市场。科技的突飞猛进使得人们的生活节奏也随之加快。发展至今,手机移动终端技术已趋向成熟,人们对于手机设备的功能和需求也不断变大,已逐渐从过往的技术需求逐渐转化为功能需求,伴随着的是人们对移动软件系统的需求也提高了很多。1.2 现状和问题随着互联网技术的飞快发展及手机应用的普及,各行各业都在积极地向信息科技靠拢,餐饮业也不例外。移动互联网终端的普及和应用为餐饮行业提升了效率,拓展了业务。目前国内外点餐APP发展迅速,前景可观,迎合着年轻消费群体的新时尚。实现人们在网络上选餐
3、定餐邀约聚餐等多重服务功能,给消费群体带来了便捷,也提升了餐饮业的工作效率。同时,基于校园内食堂的校园自助点餐APP也层出不穷,各种点餐软件五花八门,争相斗艳,各有各的优势及特点。但是,目前仍有许多高校学校里面的食堂还是没有网上点餐系统,还是用传统方式进行点餐,即学生亲自到食堂窗口排队点餐。这种传统的排队点餐方式容易造成食堂下课高峰期拥堵的现象,使得学生在排队时浪费了大量的时间,进而影响到午休时间及其他方面的时间。另一方面,也有可能造成学生想避开食堂高峰期而选择延后饭点,进而导致吃到凉的饭菜和没按时吃饭导致的身体健康问题。1.3 目的和意义为了解决校园食堂下课高峰拥堵的问题,使学生点餐更加方便
4、快捷,能按时按点吃到饭菜,减少没必要的排队浪费了的时间,本毕业设计着力研发一款校园网上的、提前订餐系统。本订餐系统的基础操作系统是Android操作系统,为了学生用户可以避免食堂的高峰期点餐慢的问题,方便学生用户提前点餐,在线查看菜品价格等信息,实现在线点餐,做成应用程序拓展到学生用户的终端设备上,并且提供一些辅助功能,方便学生用户使用,满足学生用户的需求。1.4 研究内容本设计是以Android操作系统为基础的“校园订餐App”软件的设计与实现。本设计讨论了整个系统的结构,系统开发的方法还有基本原理。其中包括编程环境,基础知识,需求分析,系统实施,系统设计,需求分析,系统运维等等。在开发此系
5、统的过程中,着重于系统操作的简单性,便捷性,并力争系统设计的全面,且具普遍性。通过不断测试和对系统理解深入,进而不断完善系统。研究方便学生用户提前点餐,节省时间,解决食堂高峰拥挤的问题,致力开发出一款基于Android手机平台的校园订餐系统。 2. 系统开发环境介绍2.1 Android平台简介Android是一个非常开放自由的移动操作系统,原因在于它的源代码具备开放性。Android系统的设计主要是在Linux平台上所进行的,Linux平台是一款免费的,并且可被任意修改源代码,使得它与其他操作系统区别了开来,受到许多程序员青睐。最初,Android系统的最初创始者是Andy Rubin,最原
6、先其支持的主要是手机。但随后在被谷歌进行注入资和收购,几年后,谷歌又联合近百家相关企业,共同将Android系统进行了改造,使其变得更加完善良好。随后谷歌以发布Android源代码,号称是首个基于移动终端打造的完整且开放的移动软件。分层结构是该系统架构在具体设计过程中所遵循的一种思想,该结构使其拥有非常清晰的结构还有层次,实现了结构层次分工合作。总的来说,主要是由如下几个部分共同组成,即由上到下分别为最上层的应用程序层,第二层是应用程序框架层,第三层的系统运行库层,还有最下面的一层Linux内核层所共同组成组,构建的方式是一种被称为Software Stack的构建方法。Android系统的这
7、种特别的结构层次使其具有两个优点,即是使其的分工具有明确性,另外,也使它的系统分工也具备明确性。除此之外,系统间的每一层之间也具备了低耦合的性质。即当其他层内或者此层之下的层级发生某些改变时,与之对应的上层级不需要有作出任何响应或改变。如图2-1所示。图2-1 Android系统架构图2.2 设计相关的Android技术2.2.1 Android用户界面简介用户界面通过View和ViewGroup对象构建。全部View的子类变成“Widget”,全部ViewGroup的子类变成“Layout”。两者之间运用的模式为组合设计。处于布局最顶端的是ViewGroup,整个布局里面又包含了View及V
8、iewGroup。图2-2 Android UI框架结构2.2.2 Android终端与Web服务器端数据交互发布Android应用的方法:第一种途径是不安装任何附加程序,直接应用web标准制定并且通过web browsers进行访问。这种是以作为web应用程序的途径。第二种途径是靠Android SDK来进行并完成开发的。其过程是在设备的安装进程中。该系统有一特点,在两端创建程序时无需在相应的程序上进行另外设计。此外网站的体现无需再研发别的程序来让其得以体现。要成功连接web page还有安卓程序只需定义相对应的接口,想要对API进行调用只需通过网页的脚本。追本溯源,在此程序中,想要添加网页
9、的内容或是增加JavaScript内容,只需通过webview或者在Android Api应用中增加即可。除此之外,屏幕的密度有提升的空间,通过提高来形成更高版本。WebKit的框架中的功能包括了可以对picture属性或者样式内容进行修改,此外,还支持web页面对视口属性进行指定。2.3 开发工具介绍2.3.1 Eclipse介绍Eclipse是一个极其著名的集成开发环境,通过加装各种不同的插件可以使其支持数种不同的语言。这使得其不只限于开发java。开放源代码,可扩展性,自由性,灵活性都是其特点。从Eclipse的本质上来看,Eclipse可以说只是一个框架平台或者是一组服务。它的实际意义
10、是可以通过添加各种插件或者组件来建成比其他相对比较固定的开发软件更具有灵活性的开发环境。正是其以上种种特点使其受到人们广泛的关注和青睐。2.3.2 MyEclipse与Tomcat介绍MyEclipse是在eclipse 环境上加上专属插件而构建而成的极其强大的开发环境,主要作用是进行Java开发等等,属于插件集和,拥有多样化的功能,可以对多种需求进行满足,在开源产品支持过程中发挥着非常重要的作用。现阶段,常用的专属eclipse开发工具都存在其中,支持JavaServlet, AJAX, JSP, EJB3, JDBC数据库链接工具等多项功能。Tomcat的开发者包括Apache、Sun等等
11、,是一个具备开放性的web应用服务器,属于Jakarta项目的重要组成部分之一。Tomcat具有轻型的特点,在具体实践过程中并不需要占用较多的资源,并且扩展能力非常理想,很多程序员在对JSP程序进行建设过程中,都优先选择使用这一服务器。Tomcat实际上是对JSP页面还有Servlet进行运行。Tomcat所具备的超高稳定性,免费性还有其本身技术方面的先进,使其成为当前很是流行的一款web应用服务器,深得各路软件开发商和非常多的程序员所认可跟喜爱。2.3.3 关键技术介绍Android平台开发方面包含基本的应用功能开发、数据存储、网络访问这三大块。 功能开发标准的Android程序由如下4部分
12、组成即Activity、Broadcast Intent Receiver、Service、Content Provider来实现。 数据存储在Android,可供选择的存储方式包括了SharedPreferences、文件存储、SQLite数据库存储方式、Content Provider以及网络方式 5种,本系统网络方式主要是通过网络访问该网络提供的网络服务接口实现数据的读写服务。 网络访问方面主要是Http访问技术的封装,通过java.NET.*;以及A.*;下面提供的HttpPost、DefaultHttpClient、HttpResponse等类提供的访问接口来实现具体的web服务访问
13、。本软件采用Java作为开发语言,布局和数据存储是开发本软件的关键技术,布局用来设计用户交互界面,使用xml技术设计,而xml中控件的位置和状态则离不开布局的使用,用户界面的设计是否美观和合理直接影响用户体验,因此运用好布局技术是直接和用户相关的,而数据存储技术则记录了用户所有的操作数据和用户所需要提取的数据。数据库技术数据库技术发明于上世纪六七十年代,是一个信息系统中极其重要的技术。其作用是对大量的数据进行获取,处理,组织并且加以储存。简而言之,就是对系统中的数据的研究和管理,最根本的目的是要让数据实现共享。设计采用的是一种能够实现多个用户进行数据访问的较多被使用的关系型数据库。其拥有包括参
14、照,实体及用户定义完整性的完整约束性。安全性,可靠性是一个数据库系统应当具备的性质,本设计采用了现如今比较受程序员青睐的关系型数据系统MySQL数据管理系统为本应用设计的数据方面进行储存和管理,MySQL的特点是运行的速度非常快,体积也相对比较小,除此之外,还对外开放源代码,因而,这个数据管理系统对比其他数据管理系统显得格外卓越。MySQL中功能强大而又简单的API,这一功能特点为程序的设计构建提供了许多便利。不用去深入探讨各模型的构建机理便能运用预测模型,可使开发变轻松许多。 3. 系统分析3.1 系统可行性分析3.1.1 技术可行性Java语言具有如下特点1. 简单性:语言简洁,剔除少用特
15、征,无主文件与预处理程序,节省时间。2. 对象性:中心为对象,驱动为消息。3. 分布性:分布式语言,程序只需编写一次即可处处运行。4. 编译和解释性:与普通机器码区别了开来,编译成byte-code。试验简单且支持快速原型。5. 稳健性:独特的存储模型,语言类型强,有异常处理功能。6. 安全性:存储分配模型。对存储安排决策不给予处理,程序实际存储地址是由java解释。7. 可移植性:可移植至新的平台与系统。8. 高性能:“及时”编译程序,可实现全编译。9. 多线索性:多线索执行功能,可处理不一样的任务。10. 动态性:能对各种不同环境适应其中。以上特点使得Java语言可以诸多环境中自由运行,不
16、会因为受限于某种环境而无法正常运行。只要进行一次程序代码的编写,即能在各种环境下无限制运行,并且具有高安全性,高稳定性,还可使开发变得更加简便,节省时间。此外,相应指导资料甚多,可提供技术参考,且基于Android系统的各类发展时至今日,已经非常成熟。综合以上所说,可见系统的开发具有技术可行性。3.1.2 操作可行性本应用是一个基于安卓客户端的点餐应用,所以,只要拥有安卓手机,就能在手机上面安装下载本应用,下载完成后立刻就能进行注册,注册完成后使用账号密码登录,然后就能实现在线提前点餐。本系统具有易操作、易管理、交互性好的特点,在操作上是非常简单的。所使用的用户只要平时有在用Android手机
17、,都能进行访问和操作。另外,据调查统计,安卓手机如今在市场的占有率高达85.9%。综上所述,此本系统具备操作可行性。3.1.3 经济可行性Linux平台,Eclipse平台,Tomca应用服务器以及Java语言的免费性,使得本系统设计具备经济可行性。3.2 功能需求本设计是一个基于Android平台的校园点餐系统,功能需求有两方面,一是用户端,实现学生用户可以通过注册得以登录系统,在首页可以查看菜品的分类,菜品的样式,图片,价格。可以通过系统提前下单,可在购物车查看下单内容。二是后台服务端,设计有效且容错的数据管理系统 明确数据管理系统的架构,实现该数据管理系统,做到能高效检索交易条目。实现对
18、用户信息的查看及管理。对菜式的内容进行增删查改。能查询用户下单情况,包括下单用户的学号,下单时间,有无付款和有无取餐等。另外,实现每下单十次可免单一次。总体分布如图3-1所示:图3-1 总体功能需求图3.3 主要业务流程分析1)用户登陆模块用户登陆界面为各权限用户共用同一页面,注册登录后根据用户角色显示对应功能权限。流程图如下图3-2所示:图3-2 用户登录流程图2)菜品管理模块实现对食堂菜式的名称,价钱以及图片进行管理。可以添加,查询,编辑和删除。 流程图如下图3-3所示:图3-3菜品管理流程图3)类别管理模块实现对类别信息进行增加、删除、修改等操作,类别管理流程图如图3-4所示:图3-4类
19、别管理流程图3.4 数据字典该系统采用MySQL数据库存储数据,系统中用到了多个数据表,这里列出部分数据表如下。表3-1 wct_bill表4. 系统设计与实现4.1 系统架构设计目标4.1.1 系统架构设计众所周知,在一个应用系统中,系统的架构是这个应用系统最重要,最核心的一个部分。在这其中,元件是一个应用系统中极其重要部分。当我们在设计一个系统的架构时,我们需要做到的很重要的一点就是我们应对在元件之间确定好它们的关系。在整个系统架构的构建设计中,当我们对我们所需的并且已确定的技术还有需求做好了规划以及实现了需要的架构之外,我们还需重视另一方面,即对系统架构的扩展性要提高重视的力度。此外,为
20、保证系统架构的完整可行,我们还需着重注意系统的稳定以及安全性。本系统主要的架构模块有前端与后端,拥有相对的独立性是他们之间的所必须的。在对前端进行开发设计的时候,要对着重考虑用户的操作方面的问题,尽量实现用户操作性的简单高效。在后端方面,要着重思考各功能是否合乎逻辑,是否正确合理,要使其具备合理性与逻辑性。另外一方面,还要实现系统与数据库之间的数据在交互方面能正常运行。Spring MVC是本点餐系统的后台开发得以实现所运用的一种框架。此框架是一个基于mvc的一种web框架。mvc三个字母各有各的含义。m代表模块层,v代表显示层,c代表控制层。 Spring MVC是实现由服务者转换为工作者。
21、视图管理是由View Resolver来进行管理的。而处理器是由Handler Mapping来加以管理的。而进行管理的Handler Mapping和View Resolver是由应用管理器拆分开来的。在本系统中,用Spring MVC开发框架来构建后台服务端,利用了其提供了基于Java的高效开发的特点,可以快速构建稳定、功能强大的后台应用服务。如图所示,本系统从Android端直接向由Spring MVC搭建的服务端获取请求,服务端接受请求过后或调用远程WEB接口获取数据,或调用本地数据库获取数据,然后返回JSON数据结构的返回数据给Android端。如此一来,就形成了一个运转良好的信息回
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 校园 自助 APP 数据管理 系统 研究
限制150内