0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于Android客戶端和數(shù)據(jù)同步技術(shù)實(shí)現(xiàn)移動(dòng)點(diǎn)餐系統(tǒng)的應(yīng)用方案

電子設(shè)計(jì) ? 來源:科學(xué)與財(cái)富 ? 作者:劉芳先,李國 ? 2021-06-26 17:30 ? 次閱讀

系統(tǒng)發(fā)揮Android 富有創(chuàng)造力和想象力的“云”應(yīng)用開發(fā),實(shí)現(xiàn)一套Android 客戶端軟件和完善的后臺(tái)服務(wù)功能來完成點(diǎn)餐功能。該系統(tǒng)主要包括后臺(tái)數(shù)據(jù)庫服務(wù)器、WEB 服務(wù)器、無線網(wǎng)絡(luò)、Android 前端等部分??蛻舳薃ndroid 系統(tǒng)智能手機(jī)具有前端處理與計(jì)算能力,而且通過無線網(wǎng)絡(luò)訪問WEB 服務(wù)器,如果需要數(shù)據(jù)訪問,則訪問后臺(tái)數(shù)據(jù)庫。介紹了系統(tǒng)架構(gòu)的設(shè)計(jì)與搭建、技術(shù)選型、后臺(tái)數(shù)據(jù)庫的設(shè)計(jì)與實(shí)現(xiàn)、基本實(shí)用的點(diǎn)餐功能的分析、設(shè)計(jì)與開發(fā)。

移動(dòng)互聯(lián)網(wǎng)時(shí)代來臨,一個(gè)嶄新的時(shí)代開始了!

所謂移動(dòng)互聯(lián)網(wǎng)就是將移動(dòng)通信和互聯(lián)網(wǎng)整合在一起,是移動(dòng)設(shè)備(包括手機(jī)和上網(wǎng)本)可以隨時(shí)隨地訪問互聯(lián)網(wǎng)資源和應(yīng)用。

云是由許多水分子組成的,幾乎有幾億個(gè)。云沒有中央控制,基本上可以隨風(fēng)吹向各處。從這個(gè)角度來說,Internet 中無數(shù)個(gè)具有各種用途的客戶機(jī)和服務(wù)器以及驅(qū)動(dòng)其發(fā)展的控制實(shí)體就像是云。將這一概念與移動(dòng)設(shè)備帶給我們的無線數(shù)據(jù)革命結(jié)合后,我們似乎就處在一種無形的“云”計(jì)算力量中了。

智能手機(jī)是移動(dòng)互聯(lián)網(wǎng)時(shí)代一個(gè)標(biāo)志性的客戶端工具,具有強(qiáng)大的移動(dòng)“云”計(jì)算和儲(chǔ)存能力,可以通過移動(dòng)通信網(wǎng)絡(luò)來實(shí)現(xiàn)無線網(wǎng)絡(luò)接入,從而實(shí)現(xiàn)各種各樣的富有創(chuàng)造力和想象力“云”應(yīng)用。

“云”計(jì)算將可移植設(shè)備與強(qiáng)大的服務(wù)器互為補(bǔ)充,它需要一個(gè)能夠讓服務(wù)器架構(gòu)師和程序員最大程度利用小型客戶機(jī)機(jī)器的操作系統(tǒng)。Android 就是這樣一種操作系統(tǒng)。

傳統(tǒng)的餐飲行業(yè),點(diǎn)餐過程都是有餐廳服務(wù)員人工完成的。通常過程是這樣的,客人進(jìn)入餐廳后,選好座位開始點(diǎn)餐,服務(wù)員等待客人點(diǎn)餐完成,將客人的點(diǎn)餐內(nèi)容送到廚房,有廚師下廚做菜。這一過程對(duì)一個(gè)小的餐館來說沒有問題,但如果餐館比較大、客人比較多或者客人要求某位不在餐廳現(xiàn)場的服務(wù)員或老板服務(wù),客人的等待時(shí)間就會(huì)比較長。為了解決這個(gè)問題,出現(xiàn)了無線點(diǎn)餐系統(tǒng),該系統(tǒng)有無線終端(一般是一個(gè)PDA)、無線路由器和后臺(tái)服務(wù)器組成。

但它的弊端很明顯,要么PDA 價(jià)格高、只能做點(diǎn)餐用、增加系統(tǒng)成本、造成資源浪費(fèi)等,要么基于傳統(tǒng)開發(fā)手段開發(fā)的B/S 系統(tǒng)架構(gòu)的點(diǎn)餐系統(tǒng),但往往在實(shí)際應(yīng)用中速度不盡人意。

1 系統(tǒng)設(shè)計(jì)

1、1 系統(tǒng)物理架構(gòu)

該系統(tǒng)主要包括后臺(tái)數(shù)據(jù)庫服務(wù)器、WEB 服務(wù)器、無線網(wǎng)絡(luò)、Android 前端等部分??蛻舳薃ndroid 系統(tǒng)智能手機(jī)具有前端處理與計(jì)算能力,而且通過無線網(wǎng)絡(luò)訪問WEB 服務(wù)器,如果需要數(shù)據(jù)訪問,則訪問后臺(tái)數(shù)據(jù)庫。

客戶端采用Android 操作系統(tǒng)(1。5 版本以上)。

服務(wù)器端采用Tomcat WEB 服務(wù)器(5。5 版本以上)(也可以是其他WEB 服務(wù)器)、MySQL 數(shù)據(jù)庫。如圖1。

圖1 Android 云計(jì)算之移動(dòng)點(diǎn)餐系統(tǒng)物理架構(gòu)

1、2 系統(tǒng)技術(shù)選型

Android 客戶端應(yīng)用使用Java 技術(shù),網(wǎng)絡(luò)通信使用Apache HTTP協(xié)議客戶端,中間WEB服務(wù)器采用TomcatWEB 服務(wù)器技術(shù),采用Servlet 技術(shù)響應(yīng)客戶請(qǐng)求。

后臺(tái)數(shù)據(jù)庫采用JDBC 訪問遠(yuǎn)程MySQL 數(shù)據(jù)庫,Android 客戶端的一部分?jǐn)?shù)據(jù)同時(shí)存儲(chǔ)在Android 本地的SQLite 數(shù)據(jù)庫和后臺(tái)MySQL 數(shù)據(jù)庫中,實(shí)現(xiàn)Android 客戶端和后臺(tái)數(shù)據(jù)庫的數(shù)據(jù)同步技術(shù)。如圖2 所示。

圖2 Android 云計(jì)算之移動(dòng)點(diǎn)餐系統(tǒng)技術(shù)選型。

1、3 系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)

后臺(tái)Mysql 數(shù)據(jù)庫名稱:wireless_db,共計(jì)包含以下6 個(gè)數(shù)據(jù)表。

數(shù)據(jù)表:menutbl(菜品數(shù)據(jù)表);主鍵:id(菜品編號(hào));外鍵:typeID(菜品類型編號(hào))。

數(shù)據(jù)表:menutypetbl(菜品類型數(shù)據(jù)表),主鍵:

id(菜品類型編號(hào))。

數(shù)據(jù)表:ordertbl(訂單數(shù)據(jù)表),主鍵:id(訂單編號(hào))。

數(shù)據(jù)表:orderdetailtbl(訂單詳細(xì)信息表);主鍵:

id(訂單菜品編號(hào));外鍵:orderId(訂單編號(hào))。

數(shù)據(jù)表:tabletbl(餐桌數(shù)據(jù)表),主鍵:id(餐桌編號(hào))。

數(shù)據(jù)表:usertbl(系統(tǒng)用戶數(shù)據(jù)表),主鍵:id(系統(tǒng)用戶編號(hào))。

數(shù)據(jù)模型設(shè)計(jì)如圖3:

圖3 Android 云計(jì)算之移動(dòng)點(diǎn)餐系統(tǒng)數(shù)據(jù)模型。

2 系統(tǒng)實(shí)現(xiàn)

“Android 云計(jì)算之移動(dòng)點(diǎn)餐系統(tǒng)”功能模塊實(shí)現(xiàn)每個(gè)功能模塊實(shí)現(xiàn)說明:

①系統(tǒng)的登錄功能:系統(tǒng)用戶輸入用戶名和密碼,實(shí)現(xiàn)登錄,進(jìn)入系統(tǒng)主菜單。登錄過程是通過無線網(wǎng)絡(luò),在后臺(tái)數(shù)據(jù)庫中通過用戶名和密碼進(jìn)行查詢。注冊(cè)用戶方可使用該系統(tǒng)。(圖4)。

圖4 系統(tǒng)功能實(shí)現(xiàn)框圖。

②系統(tǒng)主菜單:包括點(diǎn)菜、并臺(tái)、轉(zhuǎn)臺(tái)、查臺(tái)、更新、設(shè)置、注銷、結(jié)算等以圖形方式展現(xiàn)的系統(tǒng)功能菜單。

③點(diǎn)餐功能:操作員輸入客人的點(diǎn)餐信息,通過無線網(wǎng)絡(luò)及時(shí)的將點(diǎn)餐信息傳送到后臺(tái)服務(wù)器,進(jìn)而在廚房終端顯示,利于廚師盡快下廚做菜。該模塊包括了開桌、點(diǎn)菜、下單三個(gè)功能。(圖5)。

④結(jié)算功能:操作員根據(jù)訂單編號(hào)查詢點(diǎn)餐訂單信息和訂單信息詳細(xì)列表,顧客確認(rèn)后單擊結(jié)算按鈕進(jìn)行結(jié)算。

⑤查臺(tái)功能:當(dāng)有顧客進(jìn)入餐廳時(shí),需要服務(wù)員查詢餐桌狀態(tài)(有人或空位),來安排顧客就餐。該過程應(yīng)是查詢數(shù)據(jù)庫中的餐桌數(shù)據(jù)得到當(dāng)前餐桌狀態(tài)列表,通過可視化的界面進(jìn)行顯示。

⑥更新(數(shù)據(jù)同步)功能:為了提高程序的運(yùn)行效率,將服務(wù)器中菜譜表和餐桌表的數(shù)據(jù)保存到Android 客戶端SQLite 數(shù)據(jù)庫中。因此,當(dāng)服務(wù)器中的數(shù)據(jù)改變時(shí)需要及時(shí)將服務(wù)器中的數(shù)據(jù)動(dòng)態(tài)的更新到客戶端,更新功能就是為此而設(shè)計(jì)的[3]。

⑦轉(zhuǎn)臺(tái)功能:顧客下單后,要求更換座位,這時(shí)需要更改已經(jīng)提交的數(shù)據(jù)。更改的過程是根據(jù)訂單號(hào)找到該訂單對(duì)應(yīng)的桌號(hào),將該桌號(hào)更改為更換后的桌號(hào)。

⑧并臺(tái)功能:將已經(jīng)下單的兩組顧客合并到一張桌子的過程,該過程需要更改已經(jīng)提交到數(shù)據(jù)庫中的數(shù)據(jù)。更新內(nèi)容包括人數(shù)的合并、訂單的更新、訂單詳細(xì)的更新和桌位狀態(tài)的更新。

⑨注銷功能:退出“移動(dòng)云計(jì)算之Android 餐飲服務(wù)系統(tǒng)”。

下面列出更新(數(shù)據(jù)同步)功能實(shí)現(xiàn)的過程代碼,其他功能代碼從略:

創(chuàng)建一個(gè)名為UpdateActivity 的Activity,該類繼承ListActivity,通過ListView 展示界面。在該類中定義一個(gè)updateMenu()方法用于更新手機(jī)前臺(tái)界面信息,該方法調(diào)用服務(wù)器Servlet 獲得XML 格式的輸入流,通過JAVA DOM 解析該XML 獲得服務(wù)器數(shù)據(jù),將數(shù)據(jù)保存到本地SQLite 數(shù)據(jù)庫中。

服務(wù)端創(chuàng)建Servlet、拼成XML 格式數(shù)據(jù)輸出、響應(yīng)客戶端請(qǐng)求等代碼從略。

3 結(jié)語

“Android 云計(jì)算之移動(dòng)點(diǎn)餐系統(tǒng)”后臺(tái)數(shù)據(jù)庫采用JDBC 訪問遠(yuǎn)程MySQL 數(shù)據(jù)庫,Android 客戶端的一部分?jǐn)?shù)據(jù)同時(shí)存儲(chǔ)在Android 本地的SQLite 數(shù)據(jù)庫和后臺(tái)MySQL 數(shù)據(jù)庫中,實(shí)現(xiàn)Android 客戶端和后臺(tái)數(shù)據(jù)庫的數(shù)據(jù)同步技術(shù)是本系統(tǒng)在實(shí)現(xiàn)快速移動(dòng)“云”計(jì)算中的創(chuàng)新之處。

具體實(shí)現(xiàn)中,為了提高程序的運(yùn)行效率,將后臺(tái)MySQL 服務(wù)器中菜品數(shù)據(jù)表和餐桌數(shù)據(jù)表的數(shù)據(jù)保存到Android 客戶端SQLite 數(shù)據(jù)庫中。因此,當(dāng)后臺(tái)MySQL 服務(wù)器中的數(shù)據(jù)改變時(shí)需要及時(shí)將服務(wù)器中的數(shù)據(jù)動(dòng)態(tài)的更新到Android 客戶端,更新功能就是為此而設(shè)計(jì)的。

因此,“Android 云計(jì)算之移動(dòng)點(diǎn)餐系統(tǒng)”完全具有了傳統(tǒng)的C/S 和B/S 的優(yōu)異功能,同時(shí)又結(jié)合了最先進(jìn)的移動(dòng)“云”計(jì)算設(shè)計(jì)理念。

為了滿足具有一定規(guī)模、需要提高餐廳點(diǎn)餐效率、體現(xiàn)出現(xiàn)代化的氣氛、改進(jìn)客人就餐環(huán)境,并借此提高經(jīng)濟(jì)效益的餐廳和酒店的實(shí)際需求,“移動(dòng)云計(jì)算之Android 餐飲服務(wù)系統(tǒng)”實(shí)現(xiàn)一套Android 客戶端軟件和完善的后臺(tái)服務(wù)功能來完成餐飲服務(wù)功能。系統(tǒng)不會(huì)占用太大的預(yù)算,并能盡量沿用原有的成熟技術(shù),與原有系統(tǒng)進(jìn)行良好的整合,那么該系統(tǒng)將具有很好的開發(fā)與應(yīng)用價(jià)值。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 智能手機(jī)
    +關(guān)注

    關(guān)注

    66

    文章

    18491

    瀏覽量

    180200
  • Android
    +關(guān)注

    關(guān)注

    12

    文章

    3936

    瀏覽量

    127397
  • 云計(jì)算
    +關(guān)注

    關(guān)注

    39

    文章

    7800

    瀏覽量

    137395
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于Android平臺(tái)怎么為多種移動(dòng)客戶端提供即時(shí)通信服務(wù)?

    核心是基于開源的WebKit 引擎, 對(duì)基于HTML 的各種語言具有良好的支持。圖像引擎使用基于openGLES1. 0 的三維圖形庫。本文的研究目的就是基于Android 平臺(tái), 提出一種能為多種移動(dòng)客戶端提供即時(shí)通信服務(wù)
    發(fā)表于 03-18 07:17

    如何采用Android云計(jì)算實(shí)現(xiàn)移動(dòng)點(diǎn)系統(tǒng)的設(shè)計(jì)?

    請(qǐng)問如何采用Android云計(jì)算實(shí)現(xiàn)移動(dòng)點(diǎn)系統(tǒng)的設(shè)計(jì)?
    發(fā)表于 04-19 08:38

    android客戶端通過藍(lán)牙協(xié)議控制繼電器

    一直沒怎么寫博客,貼一個(gè)比較簡單小例子(以前做的 android 通過wifi實(shí)現(xiàn)萬能遙控器 中拆分出來的小案例):android客戶端通過藍(lán)牙協(xié)議,控制繼電器(想控制其他玩意,自己設(shè)
    發(fā)表于 12-02 06:03

    監(jiān)控系統(tǒng)客戶端及服務(wù)設(shè)計(jì)

    庫詳情2.1.2 數(shù)據(jù)庫接口及實(shí)現(xiàn)2.1.2.1 用戶注冊(cè)2.1.2.2 用戶查詢2.2 監(jiān)控系統(tǒng)客戶端及服務(wù)設(shè)計(jì)2.2.1 `CS`模型
    發(fā)表于 12-21 07:02

    用Delphi開發(fā)OPC客戶端工具的方法研究

    本文通過介紹OPC 技術(shù)的工作原理,結(jié)合OPC 客戶端的工作機(jī)制,給出OPC 客戶端的開發(fā)方法及在的Delphi 的具體實(shí)現(xiàn),提出了OPC 客戶端
    發(fā)表于 06-15 10:37 ?35次下載

    移動(dòng)數(shù)據(jù)庫系統(tǒng)同步方案設(shè)計(jì)

    設(shè)計(jì)了一個(gè)移動(dòng)事務(wù)管理系統(tǒng)用來滿足移動(dòng)計(jì)算的諸多特征。客戶端緩存部分數(shù)據(jù),允許網(wǎng)絡(luò)在斷連時(shí)繼續(xù)操作。在
    發(fā)表于 06-28 17:13 ?0次下載
    <b class='flag-5'>移動(dòng)</b><b class='flag-5'>數(shù)據(jù)庫系統(tǒng)</b>的<b class='flag-5'>同步</b><b class='flag-5'>方案</b>設(shè)計(jì)

    基于Android平臺(tái)的即時(shí)通信系統(tǒng)客戶端設(shè)計(jì)

    為解決在基于Linux 操作系統(tǒng)Android 手機(jī)平臺(tái)上即時(shí)通信問題, 實(shí)現(xiàn)系統(tǒng)客戶端進(jìn)行文本、圖片、音樂的傳送和播放。采用Java
    發(fā)表于 10-11 16:47 ?4986次閱讀
    基于<b class='flag-5'>Android</b>平臺(tái)的即時(shí)通信<b class='flag-5'>系統(tǒng)</b><b class='flag-5'>客戶端</b>設(shè)計(jì)

    Android 仿QQ客戶端及服務(wù)源碼

    Android 仿QQ客戶端及服務(wù)源碼
    發(fā)表于 03-19 11:23 ?3次下載

    基于Android平臺(tái)的即時(shí)通信系統(tǒng)客戶端設(shè)計(jì)

    多種移動(dòng)客戶端提供即時(shí)通信服務(wù)系統(tǒng)客戶端解決方案。 1 系統(tǒng)開發(fā)環(huán)境
    發(fā)表于 12-01 01:16 ?649次閱讀
     基于<b class='flag-5'>Android</b>平臺(tái)的即時(shí)通信<b class='flag-5'>系統(tǒng)</b><b class='flag-5'>客戶端</b>設(shè)計(jì)

    基于Android的校園客戶端系統(tǒng)設(shè)計(jì)

    當(dāng)前各高校都提供統(tǒng)一的賬號(hào)和密碼登陸學(xué)校的各種系統(tǒng),包括學(xué)校新聞、圖書館系統(tǒng)、教務(wù)系統(tǒng)和校園一卡通系統(tǒng)等。這些系統(tǒng)一般都分散在不同的子
    發(fā)表于 12-13 17:10 ?15次下載
    基于<b class='flag-5'>Android</b>的校園<b class='flag-5'>客戶端</b><b class='flag-5'>系統(tǒng)</b>設(shè)計(jì)

    基于LBS的Android校園服務(wù)APP客戶端的設(shè)計(jì)

    本文主要介紹了基于LBS的Android校園服務(wù)APP客戶端的設(shè)計(jì),校園LBS系統(tǒng)移動(dòng)終端系統(tǒng)、后臺(tái)服務(wù)
    發(fā)表于 12-27 14:54 ?3636次閱讀
    基于LBS的<b class='flag-5'>Android</b>校園服務(wù)APP<b class='flag-5'>客戶端</b>的設(shè)計(jì)

    Linux操作系統(tǒng)Android手機(jī)的即時(shí)通信系統(tǒng)客戶端的解決方案介紹

    核心是基于開源的WebKit 引擎, 對(duì)基于HTML 的各種語言具有良好的支持。圖像引擎使用基于openGLES1. 0 的三維圖形庫。本文的研究目的就是基于Android 平臺(tái), 提出一種能為多種移動(dòng)客戶端提供即時(shí)通信服務(wù)
    的頭像 發(fā)表于 11-22 08:00 ?2397次閱讀
    Linux操作<b class='flag-5'>系統(tǒng)</b>的<b class='flag-5'>Android</b>手機(jī)的即時(shí)通信<b class='flag-5'>系統(tǒng)</b><b class='flag-5'>客戶端</b>的解決<b class='flag-5'>方案</b>介紹

    iOS淘寶客戶端應(yīng)用名稱發(fā)生變化 Android客戶端應(yīng)用名稱尚未更改

    iOS淘寶客戶端應(yīng)用名稱發(fā)生變化 Android客戶端應(yīng)用名稱尚未更改
    發(fā)表于 04-18 15:37 ?935次閱讀

    GitHub iOS和Android客戶端發(fā)布穩(wěn)定版

    GitHub 在去年的 Universe 大會(huì)上推出了尚處于 Beta 階段的移動(dòng)客戶端。經(jīng)過數(shù)月的開發(fā),適用于移動(dòng)設(shè)備的 GitHub iOS 和 Android
    的頭像 發(fā)表于 03-18 09:43 ?2453次閱讀

    適用于Linux的基于Rust的同步客戶端介紹

    一個(gè)簡單而優(yōu)雅的 GUI 同步客戶端,提供雙向同步。
    的頭像 發(fā)表于 01-05 11:32 ?624次閱讀
    適用于Linux的基于Rust的<b class='flag-5'>同步</b><b class='flag-5'>客戶端</b>介紹