【Android论文栏目提醒】:网学会员在Android论文频道为大家收集整理了“基于Android云计算的移动点餐系统 - 期刊论文“提供大家参考,希望对大家有所帮助!
计 算 机 系 统 应 用 http://www.c-s-a.org.cn 2012 年 第 21 卷 第 8 期基于
Android 云计算的移动点餐系统①陈 浩,李本富南方医科大学 生物医学工程学院 广州 510515摘 要:系统发挥
Android 富有创造力和想象力的“云”应用开发,实现一套
Android 客户端软件和完善的后台服务功能来完成点餐功能。
该系统主要包括后台数据库服务器、WEB 服务器、无线网络、
Android 前端等部分。
客户端
Android 系统智能手机具有前端处理与计算能力,而且通过无线网络访问 WEB 服务器,如果需要数据访问,则访问后台数据库。
介绍了系统架构的设计与搭建、技术选型、后台数据库、基本实用的点餐功能的分析、设计与开发。
关键词:云计算;
Android;点餐系统Mobile System for Ordering Services Based on
Android Cloud ComputingCHEN Hao LI Ben-FuSchool of Biomedical Engineering Southern Medical University Guangzhou 510515 ChinaAbstract:A software system for ordering services is developed based on
Android mobile cloud computing. The systemconsists of a client-end application running on
Android mobile devices and a set of server-end service applications. Thesystem components include database server WEB server wireless network and
Android front-end. The
Android endaccesses the WEB and database services via a WiFi connection. The content of this paper covers the overall systemstructure design and detailed description of the analysis design and implementation of the database and orderingservices application.Key words:cloud computing
Android ordering system 移动互联网时代来临,一个崭新的时代开始了! 种各样的富有创造力和想象力“云”应用。
所谓移动互联网就是将移动通信和互联网整合在一 “云”计算将可移植设备与强大的服务器互为补起,是移动设备(包括手机和上网本)可以随时随地 充,它需要一个能够让服务器架构师和程序员最大程访问互联网资源和应用。
度利用小型客户机机器的操作系统。
Android 就是这 云是由许多水分子组成的,几乎有几亿个。
云没 样一种操作系统。
有中央控制,基本上可以随风吹向各处。
从这个角度 传统的餐饮行业,点餐过程都是有餐厅服务员人来说,Internet 中无数个具有各种用途的客户机和服务 工完成的。
通常过程是这样的,客人进入餐厅后,选器以及驱动其发展的控制实体就像是云。
将这一概念 好座位开始点餐,服务员等待客人点餐完成,将客人与移动设备带给我们的无线数据革命结合后,我们似 的点餐内容送到厨房,有厨师下厨做菜。
这一过程对乎就处在一种无形的“云”计算力量中了。
一个小的餐馆来说没有问题,但如果餐馆比较大、客 智能手机是移动互联网时代一个标志性的客户端 人比较多或者客人要求某位不在餐厅现场的服务员或工具,具有强大的移动“云”计算和储存能力,可以 老板服务,客人的等待时间就会比较长。
为了解决这通过移动通信网络来实现无线网络接入从而实现各 个问题,出现了无线点餐系统,该系统有无线终端(一① 基金项目:广东省科技计划2009B03081030 收稿时间:2012-01-12收到修改稿时间:2012-02-20148 实用案例 Application Case2012 年 第 21 卷 第 8 期 http://www.c-s-a.org.cn 计 算 机 系 统 应 用般是一个 PDA)、无线路由器和后台服务器组成。
1.3 系统数据库设计但它的弊端很明显,要么 PDA 价格高、只能做点餐用、 后台 Mysql 数据库名称:wireless_db,共计包含增加系统成本、造成资源浪费等,要么基于传统开发 以下 6 个数据表。
手段开发的 B/S 系统架构的点餐系统,但往往在实际 数据表:menutbl(菜品数据表);主键:id(菜品应用中速度不尽人意。
编号);外键:typeID(菜品类型编号)。
数据表:menutypetbl(菜品类型数据表),主键:1 系统设计 id(菜品类型编号)。
1.1 系统物理架构 数据表:ordertbl(订单数据表),主键:id(订单 该系统主要包括后台数据库服务器、WEB 服务器、 编号)。
无线网络、
Android 前端等部分。
客户端
Android 系统智 数据表:orderdetailtbl(订单详细信息表);主键:能手机具有前端处理与计算能力,而且通过无线网络访 id(订单菜品编号);外键:orderId(订单编号)。
问 WEB 服务器,如果需要数据访问,则访问后台数据库。
,主键:id(餐桌编 数据表:tabletbl(餐桌数据表) 客户端采用
Android 操作系统(1.5 版本以上) 。
。
号)服务器端采用 Tomcat WEB 服务器 (也 (5.5 版本以上) ,主键:id(系 数据表:usertbl(系统用户数据表) 1可以是其他 WEB 服务器) MySQL 数据库 。
、 如图 1。
统用户编号)。
数据模型设计如图 3: 图1
Android 云计算之移动点餐系统物理架构1.2 系统技术选型
Android 客户端应用使用 Java 技术,网络通信使用 图3
Android 云计算之移动点餐系统数据模型 中间 WEB 服务器采用 TomcatApache HTTP 协议客户端,WEB 服务器技术,采用 Servlet 技术响应客户请求。
2 系统实现 后台数据库采用 JDBC 访问远程 MySQL 数据库, “
Android 云计算之移动点餐系统”功能模块实现
Android 客户端的一部分数据同时存储在
Android 本地 如图 4:的 SQLite 数据库和后台 MySQL 数据库中,实现 2
Android 客户端和后台数据库的数据同步技术 。
如图2 所示。
图2
Android 云计算之移动点餐系统技术选型 图4 系统功能实现框图 Application Case 实用案例 149计 算 机 系 统 应 用 http://www.c-s-a.org.cn 2012 年 第 21 卷 第 8 期 每个功能模块实现说明: 将数据保存到本地 SQLite 数据库中。
①系统的登录功能:系统用户输入用户名和密码, Private void updateMenu实现登录,进入系统主菜单。
登录过程是通过无线网 络,在后台数据库中通过用户名和密码进行查询。
注 String册用户方可使用该系统。
图 4 urlStrHttpUtil.BASE_URLservlet/UpdateServlet ②系统主菜单:包括点菜、并台、转台、查台、 try更新、设置、注销、结算等以图形方式展现的系统功 能菜单。
URL urlnew URLurlStr//实例化 URL 对象 ③点餐功能:操作员输入客人的点餐信息,通过 URLConnection connurl.openConnection无线网络及时的将点餐信息传送到后台服务器,进而 //打开连接在厨房终端显示,利于厨师尽快下厨做菜。
该模块包 InputStream inconn.getInputStream括了开桌、点菜、下单三个功能。
(图 5)。
//获得输入流 ④结算功能:操作员根据订单编号查询点餐订单 //实例化 DocumentBuilderFactory信息和订单信息详细列表,顾客确认后单击结算按钮 DocumentBuilderFactory进行结算。
factoryDocumentBuilderFactory.newInstance ⑤查台功能:当有顾客进入餐厅时,需要服务员 DocumentBuilder查询餐桌状态(有人或空位),来安排顾客就餐。
该过 builderfactory.newDocumentBuilder程应是查询数据库中的餐桌数据得到当前餐桌状态列 //实例化 DocumentBuilder表,通过可视化的界面进行显示。
Document docbuilder.parsein ⑥更新(数据同步)功能:为了提高程序的运行 //获得 Document效率,将服务器中菜谱表和餐桌表的数据保存到 NodeList nldoc.getElementsByTagName menuAndroid 客户端 SQLite 数据库中。
因此,当服务器中 //获得节点列表的数据改变时需要及时将服务器中的数据动态的更新 ContentResover crgetContentResover 3到客户端,更新功能就是为此而设计的 。
//获得访问数据库接口 ContentResover ⑦转台功能:顾客下单后,要求更换座位,这时 Uri urilMenus.CONTENT_URI需要更改已经提交的数据。
更改的过程是根据订单号 //访问数据的 Uri找到该订单对应的桌号,将该桌号更改为更换后的桌 cr.deleteurilnullnull号。
//删除本地 SQLite 数据库中的数据 ⑧并台功能:将已经下单的两组顾客合并到一张 //循环将数据进行保存桌子的过程,该过程需要更改已经提交到数据库中的 forint i0i