基于Android 無線電子菜譜系統(tǒng)開發(fā)畢業(yè)論文

上傳人:無*** 文檔編號:155206916 上傳時間:2022-09-22 格式:DOC 頁數(shù):60 大?。?.08MB
收藏 版權(quán)申訴 舉報 下載
基于Android 無線電子菜譜系統(tǒng)開發(fā)畢業(yè)論文_第1頁
第1頁 / 共60頁
基于Android 無線電子菜譜系統(tǒng)開發(fā)畢業(yè)論文_第2頁
第2頁 / 共60頁
基于Android 無線電子菜譜系統(tǒng)開發(fā)畢業(yè)論文_第3頁
第3頁 / 共60頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《基于Android 無線電子菜譜系統(tǒng)開發(fā)畢業(yè)論文》由會員分享,可在線閱讀,更多相關(guān)《基于Android 無線電子菜譜系統(tǒng)開發(fā)畢業(yè)論文(60頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、 基于Android 無線電子菜譜系統(tǒng)開發(fā)畢業(yè)論文目錄1 引言11.1 選題背景和意義11.2 無線點餐系統(tǒng)簡介21.3 本文的主要工作與組織結(jié)構(gòu)21.3.1 本文的主要工作:21.3.2 本文的組織結(jié)構(gòu)32 需求分析42.1 功能需求42.2 用戶群體描述52.3業(yè)務(wù)流程分析62.3.1訪客瀏覽62.3.2 點菜流程62.3.3結(jié)賬流程72.3.4管理用戶信息82.4 數(shù)據(jù)通訊83 概要設(shè)計103.1 系統(tǒng)結(jié)構(gòu)設(shè)計103.2 總體功能模塊設(shè)計113.3 模塊功能概要設(shè)計113.3.1 菜單管理模塊113.3.2 餐桌管理模塊123.3.3 訂單管理模塊123.3.4 用戶管理模塊123.3.

2、5 Web Service接口124 數(shù)據(jù)庫設(shè)計134.1 數(shù)據(jù)庫的需求分析134.2 數(shù)據(jù)庫概念設(shè)計134.3 數(shù)據(jù)庫邏輯設(shè)計154.4 數(shù)據(jù)庫的實現(xiàn)155 詳細(xì)設(shè)計185.1 菜單管理模塊設(shè)計195.1.1 整體設(shè)計195.1.2 管理員輸入信息的傳遞195.2訂單管理模塊設(shè)計205.2.1 整體設(shè)計205.2.2 用戶點餐功能215.2.3 通知功能215.2.4 換桌、并桌功能215.2.4 結(jié)賬功能225.3 用戶管理模塊設(shè)計225.3.1 整體設(shè)計225.3.2 用戶注冊功能225.3.3 角色管理功能225.3.3 個人信息修改功能225.4 Web Service 接口設(shè)計22

3、6 系統(tǒng)實現(xiàn)246.1 開發(fā)環(huán)境與相關(guān)技術(shù)246.2 功能模塊的實現(xiàn)266.2.1 菜單管理功能模塊的實現(xiàn)266.3 點菜功能模塊的實現(xiàn)276.3.1 添加菜品的實現(xiàn)276.3.2 通知的實現(xiàn)286.4 主要界面286.5 數(shù)據(jù)庫操作347 測試報告377.1 測試方案377.2 測試項目377.3 主要測試用例387.4 測試進(jìn)度407.5 測試方法417.6 測試結(jié)果分析417.6.1 測試的局限性417.6.2 評價測試結(jié)果的準(zhǔn)則41總結(jié)42致謝43參考文獻(xiàn)44附錄A 譯文45附錄B 外文原文5158 / 601 引言本章主要簡述無線點餐系統(tǒng)的選題背景和意義,并對本文的工作和組織結(jié)構(gòu)做了

4、介紹。1.1 選題背景和意義餐飲傳統(tǒng)的點菜方式是純?nèi)斯げ僮鳎煞?wù)員記錄顧客點的菜,然后將點菜的信息分別交由吧臺收銀、酒水、傳菜部、后廚等部門,同時收銀員要把所有的點菜單輸入電腦中,才能生成相應(yīng)的單據(jù)進(jìn)行結(jié)算。在具體工作中容易出現(xiàn)以下問題:(1)手寫單據(jù)字跡潦草從而導(dǎo)致上錯菜、少上菜現(xiàn)象嚴(yán)重(2)加菜和查賬程序較繁瑣(3)處理特殊口味有遺漏和偏差(4)客人催菜遺忘現(xiàn)象較頻繁(5)計算賬單易出錯(6)不方便人員管理等等。正因如此,無線點餐模式應(yīng)運而生。采用無線點菜系統(tǒng),服務(wù)員在點菜時就完成了輸單過程,發(fā)送后系統(tǒng)自動分類,各部門立即分單打印,避免服務(wù)人員的來回跑動,節(jié)約時間,工作效率極大提高,工作

5、流程更加合理、科學(xué)它不僅可以有效地提高餐飲業(yè)的工作效率,更可以規(guī)服務(wù)體系,提高整體服務(wù)質(zhì)量和管理水平,并為規(guī)?;?jīng)營提供了堅實的技術(shù)基礎(chǔ)。相比于傳統(tǒng)餐飲行業(yè)使用紙質(zhì)菜單作為主要信息媒介的點菜方式,使用無線點餐系統(tǒng)的優(yōu)勢表達(dá)在一下方面:(1)提高工作效率。采用無線點菜系統(tǒng),服務(wù)員在點菜時就完成了輸單過程,發(fā)送后系統(tǒng)自動分類,各部門立即分單打印,避免服務(wù)人員的來回跑動,節(jié)約時間,工作效率極大提高,工作流程更加合理、科學(xué)。(2) 降低企業(yè)經(jīng)營成本??梢噪S時調(diào)整菜譜(沽清、修改價格、更改圖片等),如果是傳統(tǒng)方式點菜,隨著時間的推移,經(jīng)常要變動菜譜,浪費紙,費時費力。(3)創(chuàng)建良好就餐環(huán)境,提升企業(yè)形象

6、。傳統(tǒng)的點菜方式要求服務(wù)員要有傳遞單據(jù)的過程,在營業(yè)高峰期時,服務(wù)員為提高服務(wù)效率會經(jīng)營跑動,造成餐廳混亂。而使用無線點菜系統(tǒng),服務(wù)員就可在餐廳中完成各種操作,避免因服務(wù)員來回跑動產(chǎn)生的忙亂現(xiàn)象,大大提升服務(wù)品質(zhì)和服務(wù)形象,營造高檔就餐環(huán)境,吸引更多的顧客。使用終端觸屏點菜還可以讓顧客看到更多的有關(guān)菜的信息,包括中英文菜品介紹、營養(yǎng)成分介紹、視音頻等,同時友好的用戶界面加上觸摸與遙控技術(shù)可讓顧客享受點餐的樂趣,極大提升餐廳檔次和企業(yè)形象。在人們生活節(jié)奏越來越快的今天,相信無線點餐系統(tǒng)一定會有廣闊的發(fā)展前途。1.2 無線點餐系統(tǒng)簡介無線點餐系統(tǒng)是針對餐飲行業(yè)的信息化服務(wù)和管理而開發(fā)的軟件平臺。該

7、系統(tǒng)利用WLAN無線通信技術(shù)實現(xiàn)服務(wù)器端和客戶端的通信。提供Web端管理平臺,管理員可以對餐廳的環(huán)境介紹、菜譜、餐桌進(jìn)行添加、更新等操作。同時服務(wù)器端將這些功能通過Web Service發(fā)布給外部系統(tǒng),能夠讓Android移動平臺上的無線點餐系統(tǒng)客戶端調(diào)用。點菜環(huán)節(jié)上,客戶端通過調(diào)用服務(wù)器端的開臺、點餐、并臺、換臺、結(jié)算等功能,讓服務(wù)員可以用Android手持設(shè)備在客人餐桌旁完成信息的錄入,在服務(wù)器端生成訂單,大大簡化了點菜流程。顧客可以在點菜的同時直觀的看到菜品信息,帶給顧客良好的體驗。1.3 本文的主要工作與組織結(jié)構(gòu)1.3.1 本文的主要工作:無線點餐系統(tǒng)服務(wù)器端是整個點餐系統(tǒng)的后臺運行支

8、持:(1)在實現(xiàn)方式上服務(wù)器端和客戶端通過WLAN,利用Web Service進(jìn)行通信,使得服務(wù)器端只需要關(guān)注點餐數(shù)據(jù)的處理,而不需要對客戶端發(fā)送的請求進(jìn)行解析,相比較于 請求的方式,不需要對每次通信進(jìn)行確認(rèn),提高了數(shù)據(jù)交換的效率。同時,Web Service是一種跨平臺的通信方式,可以使用Android或者Windows Phone 的手機或平板作為客戶端,使得系統(tǒng)的搭建變得靈活。(2)在功能方面無線點餐系統(tǒng)考慮到生活中點餐的實際,提供了用戶登錄,餐桌管理,點菜管理、并臺管理、轉(zhuǎn)臺管理、查臺管理、結(jié)臺管理、更新管理、打印訂單等在的功能,并在用戶提交訂單之后,服務(wù)器端向用戶注冊的發(fā)送一封點餐成

9、功的作為確認(rèn)。(3)在系統(tǒng)升級方面管理員可以通過后臺的Web端管理界面對菜品信息、餐桌信息進(jìn)行添加、刪除和更新管理。服務(wù)器端的數(shù)據(jù)有改變的時候,客戶端可以通過更新操作取得服務(wù)器端的最新數(shù)據(jù),從而保持?jǐn)?shù)據(jù)的一致性。1.3.2 本文的組織結(jié)構(gòu)本文對無線點餐系統(tǒng)軟件進(jìn)行了原理和技術(shù)上的討論,詳細(xì)描述了該系統(tǒng)的設(shè)計思路和方法,在此基礎(chǔ)上開發(fā)了可以實際使用的應(yīng)用軟件。本文包括容如下:引言:描述了系統(tǒng)開發(fā)的背景和意義,簡單介紹了系統(tǒng)的主要功能,并與傳統(tǒng)的語音信箱進(jìn)行了比較。需求分析:利用面向?qū)ο蟮姆治龇椒?,建立各種環(huán)境下的用例模型,描繪出系統(tǒng)的功能、性能和其它需求。系統(tǒng)設(shè)計:使用面向?qū)ο蟮脑O(shè)計方法,在需求

10、分析確定的模型基礎(chǔ)上,設(shè)計出軟件的邏輯模型、軟件各組成部分間的在結(jié)構(gòu)與實現(xiàn)方法。這一過程分為概要設(shè)計、數(shù)據(jù)庫設(shè)計和詳細(xì)設(shè)計三部分。系統(tǒng)實現(xiàn):論述了系統(tǒng)各功能模塊的實現(xiàn)方法。測試報告:對開發(fā)完成的軟件進(jìn)行測試分析。結(jié)論:總結(jié)本軟件的特點和不足。2 需求分析本章主要闡述無線點餐系統(tǒng)的總體需求和相關(guān)界定,并由此提煉出系統(tǒng)的業(yè)務(wù)邏輯結(jié)構(gòu)。2.1功能需求無線點餐系統(tǒng)的設(shè)計與開發(fā)應(yīng)達(dá)到以下的總體目標(biāo),即主要功能需求:(1)訪客瀏覽功能: 餐廳環(huán)境介紹和特色菜的圖片采用輪轉(zhuǎn)方式展示,使用戶在進(jìn)入餐廳時就可以看到。(2)用戶注冊功能:當(dāng)用戶準(zhǔn)備點菜時需要進(jìn)行信息的注冊,以便在訂單完成后發(fā)出通知。(3)用戶登陸

11、功能:通過正確的用戶名和密碼進(jìn)入系統(tǒng)查看菜單并進(jìn)行點餐。(4)普通用戶點餐功能:輸入人數(shù)、附加信息等選項,進(jìn)入點菜頁面選擇要點的菜品,可以看到菜品的名字、圖片、價格、描述等信息,通過點擊數(shù)量兩側(cè)的加減按鈕選擇要點的份數(shù),點擊點餐按鈕將相應(yīng)菜品加入到臨時訂單。(5)查看已點菜臨時訂單功能:用戶點餐過程中可以點擊查看詳情按鈕查看已點菜信息,如果有不需要的菜品可以在此頁面中刪除,可以繼續(xù)添加菜品。點菜完畢后點擊提交訂單按鈕將點菜信息保存。(6)電子通知功能:用戶提交訂單后,系統(tǒng)將發(fā)送到用戶的電子地址,提示用戶訂單已提交成功。(7)用戶訂單列表功能:普通用戶可以查看自己的所有消費訂單,并可將訂單打印。

12、未付款訂單可以繼續(xù)加菜。(8)用戶信息查看、修改功能:已登陸用戶可以查看自己的信息并進(jìn)行修改。(9)系統(tǒng)管理功能:管理員可以添加禁用用戶,并設(shè)置用戶的角色。(10)Web端管理功能:提供菜單菜品的添加修改查詢,餐桌的添加修改,訂單的添加修改查詢,付款結(jié)賬,信息查看,打印菜單。(11)客戶端點餐功能:客戶端使用Android平板進(jìn)行點餐,提供點菜、加菜、減菜、并桌、換桌、結(jié)賬功能。(12)服務(wù)器端和客戶端通信功能:服務(wù)器端向外部發(fā)布Web Service,客戶端收集用戶點菜信息,并通過調(diào)用服務(wù)器端的Web Service將信息傳遞到服務(wù)器端處理,訂單數(shù)據(jù)保存在服務(wù)器端。2.2 用戶群體描述(1)

13、 游客指到餐廳主頁瀏覽的用戶。打開首頁可以瀏覽餐廳環(huán)境和特色菜肴的展示圖片,如果需要點餐可以點擊“開始點餐”按鈕進(jìn)行操作。(2) 點餐用戶如果未注冊需要先注冊才能點餐,如果已注冊需要用注冊賬戶登陸后開始點餐。(3) 系統(tǒng)管理人員、服務(wù)臺負(fù)責(zé)餐廳菜品、餐桌信息的維護(hù)和訂單結(jié)算??梢愿鶕?jù)桌號查到最新消費訂單,獲得訂單的詳細(xì)信息進(jìn)行結(jié)賬。圖2.1 用例圖2.3業(yè)務(wù)流程分析2.3.1訪客瀏覽(1) 功能定義用戶進(jìn)入餐廳主頁進(jìn)行信息瀏覽,可以查看餐廳環(huán)境和特色菜肴。(2) 前置條件1) 中放置要顯示的環(huán)境和菜肴圖片。2) 用戶從Web端進(jìn)入餐廳首頁。(3) 業(yè)務(wù)流程描述用戶進(jìn)入餐廳主頁進(jìn)行信息瀏覽,可以

14、查看餐廳環(huán)境和特色菜肴,如果關(guān)閉頁面則退出,否則繼續(xù)瀏覽。圖2.2 訪客瀏覽流程圖2.3.2點菜流程(1) 功能定義用戶根據(jù)需要選擇要點的菜,選擇需要的分?jǐn)?shù),點擊點菜按鈕,相應(yīng)的菜被添加到臨時訂單,查看臨時訂單后確定點菜信息再提交訂單,通知用戶點菜完成。(2) 前置條件1) 用戶開始點餐前必須已登陸。3) 管理員已經(jīng)將菜品信息添加到菜譜中。(3) 業(yè)務(wù)流程描述圖2.3 點菜流程圖2.3.3結(jié)賬流程(1) 功能定義用戶用餐完畢后,結(jié)賬人員根據(jù)桌號和時間找到用戶的賬單信息,核對無誤后結(jié)賬。(2) 前置條件1) 用戶點餐后提交訂單。2) 用餐完畢。(3) 業(yè)務(wù)流程描述圖2.4 結(jié)賬流程圖2.3.4管

15、理用戶信息(1) 功能定義用戶登陸后可以修改自己的注冊信息。管理員可以查看用戶信息并設(shè)置用戶角色。(2) 前置條件1) 用戶必須已經(jīng)注冊并登陸。(3) 業(yè)務(wù)流程描述圖2.5 用戶管理流程圖2.4 數(shù)據(jù)通訊服務(wù)器端和Android客戶端通信可以有多種選擇方案,比如 請求方式和Web Service方式。前者在處理請求操作時比較復(fù)雜,通用性差,不同語言之間很難共用;后者實現(xiàn)起來比較簡單,而且遵循SOAP協(xié)議,各種語言之間的通用性也比較強。Web Service的主要目標(biāo)是跨平臺的可互操作性,具有以下優(yōu)點:(1)跨防火墻的通信;(2)應(yīng)用程序集成;(3)B2B的集成;(4)軟件和數(shù)據(jù)重用。Web S

16、ervice也叫XML Web Service, WebService是一種可以接收從Internet或者Intranet上的其它系統(tǒng)中傳遞過來的請求,輕量級的獨立的通訊技術(shù)。是:通過SOAP在Web上提供的軟件服務(wù),使用WSDL文件進(jìn)行說明,并通過UDDI進(jìn)行注冊。XML:(Extensible Markup Language)擴展型可標(biāo)記語言。面向短期的臨時數(shù)據(jù)處理、面向萬維網(wǎng)絡(luò),是Soap的基礎(chǔ)。Soap:(Simple Object Access Protocol)簡單對象存取協(xié)議。是XML Web Service 的通信協(xié)議。當(dāng)用戶通過UDDI找到你的WSDL描述文檔后,他通過可以S

17、OAP調(diào)用你建立的Web服務(wù)中的一個或多個操作。SOAP是XML文檔形式的調(diào)用方法的規(guī),它可以支持不同的底層接口,像 (S)或者SMTP。WSDL:(Web Services Description Language) WSDL 文件是一個 XML 文檔,用于說明一組 SOAP 消息以與如何交換這些消息。大多數(shù)情況下由軟件自動生成和使用。UDDI (Universal Description, Discovery, and Integration) 是一個主要針對Web服務(wù)供應(yīng)商和使用者的新項目。在用戶能夠調(diào)用Web服務(wù)之前,必須確定這個服務(wù)包含哪些商務(wù)方法,找到被調(diào)用的接口定義,還要在服務(wù)端

18、來編制軟件,UDDI是一種根據(jù)描述文檔來引導(dǎo)系統(tǒng)查找相應(yīng)服務(wù)的機制。UDDI利用SOAP消息機制(標(biāo)準(zhǔn)的XML/ )來發(fā)布,編輯,瀏覽以與查找注冊信息。它采用XML格式來封裝各種不同類型的數(shù)據(jù),并且發(fā)送到注冊中心或者由注冊中心來返回需要的數(shù)據(jù)。基于以上特點,本系統(tǒng)采用Web Service方式解決服務(wù)器端和客戶端的通信問題。3 概要設(shè)計本章主要闡述無線點餐系統(tǒng)的總體設(shè)計和主要功能模塊。3.1 系統(tǒng)結(jié)構(gòu)設(shè)計系統(tǒng)主體結(jié)構(gòu)如圖3.1所示。其中:數(shù)據(jù)庫:采用MySQL數(shù)據(jù)庫,存儲菜品信息、餐桌信息、用戶信息、菜單信息,便于數(shù)據(jù)的管理和查詢。Web容器:采用Tomcat服務(wù)器,后臺管理和Web端點菜模塊

19、放在服務(wù)器上,同時向外部發(fā)布Web Service,Android客戶端可以調(diào)用相應(yīng)功能。交換機和無線AP:Web服務(wù)器和客戶端通信的中間層。點餐設(shè)備:Android平板或手機,通過客戶端應(yīng)用添加點菜信息。網(wǎng)絡(luò)交互:網(wǎng)絡(luò)是信息傳輸、接收、共享的虛擬平臺,通過它把各個點、面、體的信息聯(lián)系到一起,從而實現(xiàn)這些資源的共享。它是人們信息交流使用的一個工具。無線點餐系統(tǒng)通過無線AP將點餐設(shè)備和Web服務(wù)器組成一個局域網(wǎng)(LAN),在局域網(wǎng)進(jìn)行信息的傳輸。圖3.1 系統(tǒng)結(jié)構(gòu)圖3.2 總體功能模塊設(shè)計我們的點餐系統(tǒng)有Android接入和Web登錄兩種接入方式,據(jù)此可將整個系統(tǒng)分為兩大功能模塊群。當(dāng)用戶使用A

20、ndroid接入時,主要有訂單管理模塊。當(dāng)用戶使用Web方式接入時,普通用戶有訂單管理模塊和用戶管理模塊,管理員有菜單管理模塊、餐桌管理模塊、訂單管理模塊和用戶管理模塊。系統(tǒng)模塊結(jié)構(gòu)如圖3.2所示。圖3.2 功能模塊圖3.3 模塊功能概要設(shè)計3.3.1菜單管理模塊此模塊主要實現(xiàn)管理員對菜單的管理功能。管理員登陸后可以使用菜單管理模塊的“添加菜品”功能向菜譜中加入新的菜品信息。如果菜品的單價或圖片等有改變,可以使用“更新菜品”功能對菜譜中的信息進(jìn)行更改。菜品下架后可以使用“刪除菜品”功能從菜譜中刪除。3.3.2餐桌管理模塊此模塊主要實現(xiàn)管理員對餐廳餐桌的管理功能。當(dāng)餐廳需要新增桌子或?qū)σ延凶琅_進(jìn)

21、行更改時,可以使用此模塊功能。 3.3.3訂單管理模塊用戶登陸后可以新增訂單開始點菜,點菜完成后需要到臨時訂單頁面確認(rèn)訂單信息,確認(rèn)無誤后點擊提交訂單完成點菜。就餐過程中可以加菜、去菜、換桌、并桌,就餐完成后可以使用系統(tǒng)進(jìn)行結(jié)賬。3.3.4用戶管理模塊此模塊完成用戶個人信息的修改和管理員對用戶權(quán)限的更改。用戶本人登陸后可以修改注冊信息和密碼,管理員可以修改其他用戶的角色和權(quán)限。3.3.5 Web Service接口Web Service接口提供以下功能:(1)客戶端數(shù)據(jù)更新服務(wù)。當(dāng)服務(wù)器端的菜品和餐桌信息變更時,客戶端可以通過調(diào)用服務(wù)器端的數(shù)據(jù)更新接口獲得最新的數(shù)據(jù),從而保持了客戶端和服務(wù)器的

22、數(shù)據(jù)一致性。(2)用戶點餐服務(wù)。訂單數(shù)據(jù)在服務(wù)器端維護(hù),用戶點餐時調(diào)用新增訂單與點菜、加菜、減菜、換桌、并桌等接口完成點餐的操作。結(jié)賬時提供結(jié)賬的Web Service接口。4 數(shù)據(jù)庫設(shè)計本章主要闡述無線點餐系統(tǒng)的數(shù)據(jù)庫需求、設(shè)計和表的實現(xiàn)。4.1 數(shù)據(jù)庫的需求分析在設(shè)計數(shù)據(jù)庫時,不同主題的信息應(yīng)存儲在不同的表中,并遵循以下規(guī)則:同一信息只保存一次;防止刪除有用信息。只有在統(tǒng)一信息只保存一次的前提下,才能減少數(shù)據(jù)冗余性和出錯的可能性。為了防止刪除有用信息,最好的解決方法就是把不同主題的信息放在不同的數(shù)據(jù)表中。無線點餐系統(tǒng)需要記錄菜譜信息,餐桌信息,訂單信息,用戶信息。對于訂單信息來說,一個訂單

23、會點了很多菜,一個菜會在多個訂單中被點,屬于多對多的關(guān)系,在數(shù)據(jù)表的設(shè)計中容易出現(xiàn)數(shù)據(jù)的冗余。系統(tǒng)中采取了添加一個中間表的方式,將訂單信息和菜品信息分別完整的記錄在自己相應(yīng)的表中,中間表則記錄訂單和菜品的對應(yīng)關(guān)系,減少了數(shù)據(jù)的冗余。4.2 數(shù)據(jù)庫概念設(shè)計在概念設(shè)計階段中,我們從用戶的角度看待數(shù)據(jù)與處理要求和約束,產(chǎn)生一個反映用戶觀點的概念模式,然后再把概念模式轉(zhuǎn)換成邏輯模式。將概念設(shè)計從設(shè)計過程中獨立開來,使各階段的任務(wù)相對單一化,設(shè)計復(fù)雜程度大大降低,不受特定DBMS的限制。(1) 實體和屬性的定義用戶(用戶ID,用戶名,用戶密碼,用戶,用戶,用戶狀態(tài),用戶類型);餐桌(餐桌ID,餐桌編號,

24、最正確人數(shù),餐桌是否忙,餐桌圖片,最大人數(shù),預(yù)定時間,是否刪除);菜品(菜品ID,名稱,圖片,價格,折扣,類型,用時,是否刪除,描述,附加信息);訂單(訂單ID,總價,總?cè)藬?shù),總菜數(shù),下單時間,預(yù)定時間,訂單狀態(tài),附加信息,描述,用戶ID,餐桌ID);訂單_菜品(訂單菜品ID,描述,點菜份數(shù),訂單ID,菜品ID)(2) ER關(guān)系圖系統(tǒng)的ER關(guān)系如圖4.1所示。圖4.1 ER關(guān)系圖解釋如下:1) 一個餐桌上在不同時間可以有多條訂單信息,而一個訂單只能有對應(yīng)著一個餐桌。(換桌或并桌時把訂單對應(yīng)的餐桌ID改掉)2) 一條訂單信息對應(yīng)一個用戶,一個用戶可以點多個訂單。3) 一個訂單對應(yīng)多個訂單_菜品記

25、錄,一個訂單_菜品記錄對應(yīng)一個訂單。4)一個訂單_菜品記錄對應(yīng)一個菜品,一個菜品對應(yīng)多個訂單_菜品。4.3 數(shù)據(jù)庫邏輯設(shè)計由于概念設(shè)計的結(jié)果是ER圖,DBMS一般采用關(guān)系型(我們采用的MySQL就是關(guān)系型的DBMS),因此數(shù)據(jù)庫的邏輯設(shè)計過程就是把ER圖轉(zhuǎn)化為關(guān)系模式的過程。由于關(guān)系模型所具有的優(yōu)點,邏輯設(shè)計可充分運用關(guān)系數(shù)據(jù)庫規(guī)化理論,是設(shè)計過程形式化的進(jìn)行。數(shù)據(jù)庫關(guān)系模式如圖4.2所示。圖4.2 數(shù)據(jù)庫關(guān)系模式圖4.4 數(shù)據(jù)庫的實現(xiàn)MySQL是一個快速的、多線程、多用戶和健壯的SQL數(shù)據(jù)庫服務(wù)器。MySQL服務(wù)器支持關(guān)鍵任務(wù)、重負(fù)載生產(chǎn)系統(tǒng)的使用,也可以將它嵌入到一個大配置(mass-de

26、ployed)的軟件中去。MySQL是一個關(guān)系數(shù)據(jù)庫管理系統(tǒng),關(guān)系數(shù)據(jù)庫把數(shù)據(jù)存放在分立的表格中,這比把所有數(shù)據(jù)存放在一個大倉庫中要好得多,這樣做將增加你的速度和靈活性。MySQL是開源的開源意味著任何人都可以使用和修改該軟件,任何人都可以從Internet上下載和使用MySQL而不需要支付任何費用。MySQL數(shù)據(jù)庫服務(wù)器是一個客戶/服務(wù)器系統(tǒng),它由多線程SQL服務(wù)器組成,支持不同的后端、多個不同的客戶程序和庫、管理工具和廣泛的應(yīng)用程序接口(APIs)。 各數(shù)據(jù)表的物理實現(xiàn)如表4.1、表4.2、表4.3、表4.4、表4.5所示。表4.1 用戶表表名用戶表 users說明記錄用戶的個人基本信息編

27、號字段名數(shù)據(jù)類型是否為空是否為主鍵是否為外鍵說明1U_idINTEGERNYN用戶ID,自動增長2U_nameVARCHAR(150)NNN用戶名3U_passwordVARCHAR(150)NNN密碼4U_emailVARCHAR(100)YNN用戶5U_telVARCHAR(45)YYN6U_statusVARCHAR(45)YNN用戶狀態(tài),默認(rèn)”active”7U_roleVARCHAR(45)YNN用戶角色,分為”user”和”admin”。表4.2 菜品表表名菜品表 food說明記錄菜品的相關(guān)信息,為各功能模塊服務(wù)編號字段名數(shù)據(jù)類型是否為空是否為主鍵是否為外鍵說明1F_idINTEG

28、ERNYN菜品編號2F_nameVARCHAR()YNN菜品名稱3F_picVARCHAR(300)YNN菜品圖片地址4F_priceDOUBLEYNN菜品單價5F_discountDOUBLEYNN菜品折扣6F_typeVARCHAR(100)NNN菜品類型7F_timetouseDOUBLEYNN做菜所需時間8F_statusVARCHAR(100)YNN菜品狀態(tài),是否刪除9F_addonVARCHAR(300)YNN附加信息10F_descriptVARCHAR (800)YNN描述信息表4.3 餐桌表表名餐桌表 ttable說明記錄餐桌的相關(guān)信息,為各功能模塊服務(wù)編號字段名數(shù)據(jù)類型是否

29、為空是否為主鍵是否為外鍵說明1T_idINTEGERNYN餐桌編號2T_numINTEGER YNN餐桌3T_sizeINTEGER YNN餐桌最正確人數(shù)4T_flagINTEGERYNN是否忙的標(biāo)記5T_picVARCHAR(300)YNN餐桌圖片地址6T_maxsizeINTEGERYNN餐桌最大人數(shù)7T_pretimeDATETIMEYNN預(yù)定時間8T_statusTINYINT(1)YNN餐桌狀態(tài),是否刪除表4.4訂單表表名訂單表 oorder說明記錄訂單的相關(guān)信息,為各功能模塊服務(wù)編號字段名數(shù)據(jù)類型是否為空是否為主鍵是否為外鍵說明1O_idINTEGERNYN訂單編號2O_total

30、priceDOUBLEYNN訂單總價3O_totalpeopleINTEGERYNN總?cè)藬?shù)4F_sizeINTEGERYNN總菜數(shù)5O_currenttimeDATETIMEYNN訂單時間6O_pretimeDATETIMEYNN預(yù)定時間7O_statusVARCHAR(100)YNN訂單狀態(tài),是否刪除8O_addonVARCHAR (300)YNN附加信息9O_descriptVARCHAR(800)YNN描述信息10U_idINTEGERYNY用戶ID11T_idINTEGERYNY餐桌ID表4.5訂單_菜品表表名通話留言表 calldetail說明記錄呼叫的相關(guān)信息,為各功能模塊服務(wù)編號

31、字段名數(shù)據(jù)類型是否為空是否為主鍵是否為外鍵說明1Of_idINTEGERNY訂單_菜品ID2Of_statusVARCHAR(100)YN菜品數(shù)量3Of_addonVARCHAR(300)YN訂單_菜品附加信息4O_idDATETIMEYN訂單ID5F_idDATETIMEYN菜品ID5 詳細(xì)設(shè)計本章主要闡述無線點餐系統(tǒng)各功能模塊的實現(xiàn)過程。無線點餐主要由菜品管理模塊,餐桌管理模塊,訂單管理模塊,用戶管理模塊構(gòu)成。模塊中均采用了分層設(shè)計,由Action層取得用戶數(shù)據(jù),Service層做業(yè)務(wù)邏輯的處理,DAO層負(fù)責(zé)和數(shù)據(jù)庫的交互。Spring貫穿在三層中,負(fù)責(zé)Hibernate的配置和bean的

32、依賴注入,方便程序的協(xié)同工作。菜品管理分層結(jié)構(gòu)的分層如下:圖5.1 分層結(jié)構(gòu)圖圖5.2 ManageFood類圖圖5.3 FoodManageService類圖5.1 菜單管理模塊設(shè)計5.1.1 整體設(shè)計菜單管理分為添加、更新、刪除操作。添加菜品信息由管理員在添加頁面上輸入。在數(shù)據(jù)庫菜品表中有一列記錄菜品當(dāng)前狀態(tài),新添加進(jìn)去的記錄為“active”狀態(tài),表示當(dāng)前菜單中菜品可用。更新操作首先從數(shù)據(jù)庫取得原來的數(shù)據(jù)顯示到頁面上,管理員對相應(yīng)信息做完修改后點擊確認(rèn)按鈕,通過業(yè)務(wù)層之間的調(diào)用將數(shù)據(jù)庫中的信息更新。刪除分為將記錄從數(shù)據(jù)庫清除和將記錄標(biāo)記為不可用兩種方式,前一種稱之為“硬刪除”,后一種稱之

33、為“軟刪除”,本系統(tǒng)中采取了“軟刪除”的方式,即將要刪除的菜品信息在數(shù)據(jù)庫中標(biāo)記為不可用。在其他顯示、查詢等操作中,對于標(biāo)記為不可用狀態(tài)的數(shù)據(jù)不做操作。5.1.2管理員輸入信息的傳遞數(shù)據(jù)信息從前臺由管理員錄入,在Struts的action中分別有相應(yīng)的字段和用戶輸入的信息對應(yīng),在action中獲得用戶輸入的信息后調(diào)用業(yè)務(wù)邏輯Service層的添加菜品方法,將數(shù)據(jù)傳到Service層組成Food實體,然后交由DAO層保存到數(shù)據(jù)庫。數(shù)據(jù)流圖如下:圖5.4 信息輸入數(shù)據(jù)流圖5.2訂單管理模塊設(shè)計5.2.1 整體設(shè)計用戶開始點餐時首先輸入人數(shù)等信息創(chuàng)建一個新的訂單,狀態(tài)為“new”,點菜過程中訂單的點

34、菜數(shù)據(jù)增加,狀態(tài)認(rèn)為“new”,點菜完成時用戶點擊提交按鈕,訂單狀態(tài)變?yōu)椤皊ubmitted”,用戶付款后訂單狀態(tài)變?yōu)椤皃ayed”。參見圖5.5“訂單狀態(tài)”狀態(tài)遷移圖。圖5.5 訂單狀態(tài)遷移圖5.2.2用戶點餐功能用戶首先在新增訂單頁面輸入就餐人數(shù)等信息,點擊提交按鈕后新的訂單創(chuàng)建,頁面跳轉(zhuǎn)到點菜頁面,用戶瀏覽菜單信息,選擇要點的菜,使用數(shù)字輸入框左、右兩邊的加減符號改變要點的份數(shù),點擊“點餐”按鈕將選擇的菜品加入訂單。所有要點的菜全部完成時,可以進(jìn)入查看詳情頁面查看當(dāng)前已點了哪些菜,并可以進(jìn)行加菜、減菜操作。信息確認(rèn)無誤后點擊“提交訂單”按鈕將點菜信息保存到數(shù)據(jù)庫。同時,系統(tǒng)會發(fā)送一封到點

35、餐者的注冊。整個點餐過程完成。圖5.6用戶點餐時序圖5.2.3通知功能當(dāng)用戶提交訂單后系統(tǒng)根據(jù)點餐人的注冊信息,向點餐人的發(fā)送一封點餐成功的??刹捎肑avaMail的相關(guān)功能,使用pop3或SMTP協(xié)議發(fā)送,要求發(fā)送者即系統(tǒng)默認(rèn)用來發(fā)送的必須支持Pop3或者SMTP協(xié)議。5.2.4 換桌、并桌功能顧客在就餐過程中如有需要換桌或并桌可以由以下方式實現(xiàn):換桌:將當(dāng)前訂單號和目的桌號由用戶輸入,后臺根據(jù)輸入的數(shù)據(jù)將當(dāng)前訂單的桌號改為目的桌號。并桌:將用戶要求的兩個訂單桌號改為同一個。5.2.4 結(jié)賬功能管理員查詢到當(dāng)前要結(jié)賬的訂單,確認(rèn)訂單信息與應(yīng)付款后點擊付款按鈕,相應(yīng)訂單信息改為已付款。5.3

36、用戶管理模塊設(shè)計5.3.1 整體設(shè)計用戶管理模塊的主要功能有用戶注冊,用戶登陸,密碼修改,個人信息修改,用戶角色管理,權(quán)限管理。5.3.2用戶注冊功能用戶點菜時需要先注冊為系統(tǒng)的用戶,點擊注冊轉(zhuǎn)到注冊界面,填寫個人信息后點擊注冊按鈕,確認(rèn)信息無誤后注冊成功,轉(zhuǎn)到用戶登陸界面。5.3.3 角色管理功能用戶角色分為管理員和普通用戶兩種。管理員可以在用戶管理界面設(shè)置用戶的角色。角色切換后相應(yīng)的權(quán)限也做改變。5.3.3 個人信息修改功能已登陸用戶可以修改自己注冊的個人信息,系統(tǒng)分配的用戶ID和用戶角色不可以更改,應(yīng)由管理員進(jìn)行管理。5.4 Web Service 接口設(shè)計訂單管理模塊Web Servi

37、ce提供以下接口:(1)添加訂單接口:public Oorder addOrder(int peopleNumber,int tid,String oaddon,String odescript,int uid);peopleNumber:就餐人數(shù);tid:餐桌ID;oaddon:訂單附加信息;odescript訂單描述;uid:用戶ID;返回Oorder實體。(2)點菜功能接口:public boolean orderAddFood(int oid,Map tempMap);oid:訂單ID;tempMap:菜品ID和需要份數(shù)的鍵值對;返回boolean,標(biāo)記點菜是否成功。(3)減菜功能接口

38、:public boolean deleteFood(int orderID,int foodID);orderID:訂單ID;foodID:要刪除的菜品ID;返回boolean標(biāo)記刪除是否成功。(4)換桌功能接口:public boolean changeTable(int orderID, int currentTableID, int desTableID);orderID:訂單ID;currentTableID:當(dāng)前桌編號;desTableID:要換到的桌號;返回boolean標(biāo)記換桌是否成功。(5)更改就餐人數(shù)接口:public boolean changePeopleNumber(

39、int orderID,int peopleNumber);orderID:訂單ID;peopleNumber:就餐人數(shù);返回boolean標(biāo)記更改人數(shù)是否成功。(6)計算訂單總價接口:public double getTotalPrice(int orderID);orderID:訂單ID;返回訂單總價;(7)付款功能接口:public boolean payOrder(int oid);oid:訂單ID;返回boolean標(biāo)記付款是否成功。服務(wù)器端向外部發(fā)布Web Service時,在web.xml中配置AxisServlet的攔截器,處理Web Service請求。Axis2和Sprin

40、g結(jié)合使用,將上述接口的信息配置在service.xml文件中,由Spring管理Web Service中的bean實例,將接口提供的功能發(fā)布到外部。6 系統(tǒng)實現(xiàn)6.1 開發(fā)環(huán)境與相關(guān)技術(shù)(1)EclipseEclipse 是一個開放源代碼的、基于Java的可擴展開發(fā)平臺。就其本身而言,它只是一個框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。Eclipse平臺的目的,是提供多種軟件開發(fā)工具的整合機制,這些工具會成為Eclipse外掛程序,平臺必須用外掛程序加以擴充才有用處。Eclipse設(shè)計美妙之處,在于所有東西都是外掛,除了底層的核心以外。這種外掛設(shè)計讓Eclipse具備強大擴充性,但更重要

41、的是,此平臺提供一個定義明確的機制,讓各種外掛程序共通合作(透過延伸點extension points)與貢獻(xiàn)(contributions),因此新功能可以輕易且無縫地加入平臺。(2)TomcatTomcat是一個JSP/Servlet容器,它是在Sun公司的JSWDK基礎(chǔ)上發(fā)展起來的一個JSP和Servlet規(guī)的標(biāo)準(zhǔn)實現(xiàn),使用Tomcat可以體驗JSP和Servlet的最新規(guī)。Tomcat具有開源免費,小巧靈活等有點,適合中小型的應(yīng)用。(3) MySQLMySQL速度快,開源免費,支持多種操作系統(tǒng),適合一般中小應(yīng)用。在后臺程序中我們使用MySQL自帶的C API的方式對其進(jìn)行操作,在Web查

42、詢模塊中我們使用JDBC接口。(4) StrutsStruts最早是作為Apache Jakarta項目的組成部分,項目的創(chuàng)立者希望通過對該項目的研究,改進(jìn)和提高JavaServer Pages 、Servlet、標(biāo)簽庫以與面向?qū)ο蟮募夹g(shù)水準(zhǔn)。Struts是建立在MVC這種公認(rèn)的好的模式上的,Struts在M、V和C上都有涉與,但它主要是提供一個好的控制器和一套定制的標(biāo)簽庫上,也就是說它的著力點在C和V上,因此,它天生就有MVC所帶來的一系列優(yōu)點,如:結(jié)構(gòu)層次分明,高可重用性,增加了程序的健壯性和可伸縮性,便于開發(fā)與設(shè)計分工,提供集中統(tǒng)一的權(quán)限控制、校驗、國際化、日志等等;(5) Spring

43、Spring是一個開源框架,它由Rod Johnson創(chuàng)建。它是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的。Spring使用基本的JavaBean來完成以前只可能由E完成的事情。然而,Spring的用途不僅限于服務(wù)器端的開發(fā)。從簡單性、可測試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。(6) HibernateHibernate是一個開放源代碼的對象關(guān)系映射框架,它對JDBC進(jìn)行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數(shù)據(jù)庫。 Hibernate可以應(yīng)用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servlet/JS

44、P的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用E的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。(7) Axis2Apache Axis2項目是一個基于Java語言的Webs系統(tǒng)服務(wù)和客戶端的實現(xiàn)。為了從Apache Axis 1.0中獲取教訓(xùn),Apache Axis2提供了一個完整的對象模型和模塊化體系結(jié)構(gòu),這樣可以很容易的添加功能以與支持一個新的與Webs相關(guān)的說明和建議。Axis2可以讓用戶很容易的執(zhí)行以下任務(wù):發(fā)送SOAP消息 接收和處理SOAP消息 從一個普通的Java類建立Web 用WSDL來建立實現(xiàn)服務(wù)和客戶端的實現(xiàn)類 很容易的從一個服務(wù)來獲取WSDL 發(fā)

45、送和接收帶有附件的SOAP消息 建立或者使用基于REST的Web 6.2 功能模塊的實現(xiàn)6.2.1菜單管理功能模塊的實現(xiàn)業(yè)務(wù)邏輯相關(guān)操作放在Service中處理,數(shù)據(jù)從Action層中傳入。添加菜品方法如下:/* * see .wirelessorder.Service.FoodManageService#addFood(java.lang.String, java.lang.String, double, int, int) */Overridepublicboolean addFood(String f_name, String f_pic, double f_price,double f

46、discount,double timeToUse, String f_type,String fdescript,String faddon) Food food=new Food(); food.setFname(f_name); food.setFpic(f_pic); food.setFprice(f_price); food.setFtimeToUse(timeToUse); food.setFtype(f_type); food.setFdescript(fdescript); food.setFaddOn(faddon); food.setFdiscount(fdiscount)

47、; food.setFstatus(ONSALE);foodDao.addFood(food);logger.info(In FoodManageServiceImpl-Add Food successfull);returntrue;該方法接收Action層傳入的菜品信息,分別為Food實體設(shè)置他的屬性,然后調(diào)用DAO層的保存實體方法將信息存入數(shù)據(jù)庫。分頁獲得菜單信息方法如下:Overridepublic PageResultSet listFood(String foodType,int pageSize,int page) if(foodType=null|0.equals(foodTy

48、pe) hql=from Food f where f.fstatus=onsale; else hql=from Food f where f.fstatus=onsale and f.ftype=+foodType+; int totalRow = foodDao.queryRowCount(hql); / 計算總記錄個數(shù) PageInfo pageinfo = new PageInfo(totalRow, pageSize, page);/獲取該頁的記錄List list = foodDao.listFood(hql, pageinfo.getBeginIndex(), pageinfo

49、.getPageSize(); PageResultSet pageResultSet = new PageResultSet(); pageResultSet.setList(list); pageResultSet.setPageInfo(pageinfo);logger.info(In FoodManageServiceImpl-List Food successfull);return pageResultSet;該方法承受要顯示的菜品狀態(tài)、分頁大小和要顯示的頁數(shù),返回數(shù)據(jù)的信息和分頁信息。6.3 點菜功能模塊的實現(xiàn)6.3.1添加菜品的實現(xiàn)SuppressWarnings( rawty

50、pes )Overridepublicboolean orderAddFood(int oid,Map tempMap) String hql=from Oorder o where o.oid=+oid+;oorder=orderDao.getOrderByString(hql);if(oorder!=null) /IteratorEntry iterator=tempMap.entrySet().iterator();for(IteratorEntry ite = tempMap.entrySet().iterator(); ite.hasNext();) Map.Entry entry

51、= (Map.Entry) ite.next(); int foodId=(Integer) entry.getKey(); String addCount=entry.getValue().toString(); OrderFood of=new OrderFood(); Food offood=new Food(); offood=foodDaoInOrder.getFoodByID(foodId); of.setOfstatus(ordered); of.setOfaddOn(addCount); of.setOforder(oorder); of.setOffood(offood);o

52、rderFoodManageDao.saveOrderFood(of); oorder.setOstatus(submitted);orderDao.updateOrder(oorder);logger.info(In OrderManageServiceImpl-Order Add Food successfull);returntrue; else logger.info(In OrderManageServiceImpl-Order Add Food failed);returnfalse; 該方法承受訂單ID和當(dāng)前訂單對應(yīng)的菜品的ID和數(shù)量組成的Map鍵值對,遍歷Map獲得每一個菜品I

53、D和數(shù)量,將這些信息從插入到訂單_菜品中間表中,以完成點餐信息的記錄。6.3.2 通知的實現(xiàn)代碼段如下:Date dt=new Date(); MailSenderInfo mailInfo = new MailSenderInfo(); mailInfo.setMailServerHost(smtp. .); mailInfo.setMailServerPort(25); mailInfo.setValidate(true); mailInfo.setUserName(466741313 .); mailInfo.setPassword(xxxxxx);/您的密碼 mailInfo.setF

54、romAddress(466741313 .); mailInfo.setToAddress(490290793 .); mailInfo.setSubject(訂單提交成功); mailInfo.setContent(您點菜的訂單已于+dt.toLocaleString()+創(chuàng)建成功,感謝您的使用); /這個類主要來發(fā)送 SimpleMailSender sms = new SimpleMailSender();/sms.sendTextMail(mailInfo);/發(fā)送文體格式 try sms.sendHtmlMail(mailInfo);/發(fā)送html格式 catch(Exceptio

55、n mailExc) 這段代碼設(shè)置發(fā)送必須要的一些屬性,通過SMTP服務(wù)器向點餐用戶的發(fā)送一封點餐成功的。6.4 主要界面(1) 用戶瀏覽頁面:用戶進(jìn)入餐廳首頁可以瀏覽餐廳環(huán)境和特色菜相關(guān)信息,采用圖片輪轉(zhuǎn)方式顯示。圖6.1 訪客瀏覽頁面(2) 個人信息管理頁:在此頁面,用戶可以完成個人信息修改。其界面如圖6.2所示。圖6.2 個人管理頁面(3) 添加菜品頁:管理員可在此頁面添加新的菜品信息。其界面如圖6.3所示。圖6.3 添加菜品頁面(4) 菜單管理頁:列出了系統(tǒng)中已有菜品情況,可以點擊修改菜品和刪除,可按分類顯示。其界面如圖6.4所示。圖6.4 菜單管理頁面(5) 修改菜品頁:在此頁面,管

56、理員可以更改已有菜品的。其界面如圖6.5所示。圖6.5 修改菜品頁面(6) 新增訂單頁:在此頁面,用戶可以填寫就餐人數(shù),描述和附加信息。其界面如圖6.6所示。圖6.6 新增訂單頁面(7) 點餐列表頁:在此頁面,用戶可以選擇要點的菜與份數(shù)。點餐完成可以查看詳情并確認(rèn)。其界面如圖6.7所示。圖6.7 點餐列表頁面(8) 查看訂單頁:用戶可以在此頁面查看已點菜的信息,可以繼續(xù)加菜,也可以刪除不要的菜。確認(rèn)無誤后提交訂單。其界面如圖6.8所示。圖6.8 查看訂單頁面(9) 訂單列表頁:管理員可以在此頁面查看所有訂單信息,普通用戶可以查看自己的所有訂單。其界面如圖6.9所示。圖6.9 查看訂單頁面6.5

57、 數(shù)據(jù)庫操作在Web接入方式的數(shù)據(jù)庫操作上,為了更方便的實現(xiàn)對數(shù)據(jù)庫并發(fā)訪問操作的管理,我們使用Hibernate框架進(jìn)行數(shù)據(jù)庫的操作。首先配置一個Hibernate JDBC的配置文件,如下所示:jdbc.driverClassName=.mysql.jdbc.Driverjdbc.url=jdbc:mysql:/localhost:3306/wirelessorder?useUnicode=true&characterEncoding=utf-8jdbc.username=rootjdbc.password=123456#SQL dialect hibernate.dialect=org.

58、hibernate.dialect.MySQLDialect#JDBC connection pool hibernate.connection.pool_size=1#Enable Hibernates automatic session context management hibernate.current_session_context_class=thread#Disable the second-level cache hibernate.cache.provider_class=org.hibernate.cache.NoCacheProvider#Echo all executed SQL to stdouthibernate.show_sql=true#Drop and re-create the database schema on startup hibernate.hbm2ddl.auto=update在實際操作中將Hibernate整合到Spring中,所以Hibernate的數(shù)據(jù)源(Datasource)與SessionFactory 都寫在ApplicationContext.xml文件中。由Spring啟動時將這些信息加載到系統(tǒng)中。其中ApplicationContext.

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!