羅揚(yáng)威 曾紀(jì)沾
摘 要 本文采用MYSQL數(shù)據(jù)庫進(jìn)行數(shù)據(jù)表的設(shè)計(jì),利用JSP的動態(tài)生成頁面編程技術(shù),實(shí)現(xiàn)了用網(wǎng)絡(luò)展示餐飲信息、瀏覽餐飲頁面、注冊客戶、更改客戶信息;同時,完成管理人員對餐飲信息的添加、餐飲價格的更改等相關(guān)功能?;谙到y(tǒng)開發(fā)的軟件工程規(guī)范的需要,嚴(yán)格執(zhí)行設(shè)計(jì)步驟來完成該系統(tǒng)的設(shè)計(jì),并且在系統(tǒng)開發(fā)過程中結(jié)合理論知識與開發(fā)技術(shù),完成了網(wǎng)上訂餐系統(tǒng)平臺的構(gòu)建,實(shí)現(xiàn)預(yù)期的網(wǎng)上訂餐的基本功能。
關(guān)鍵詞 訂餐系統(tǒng);MYSQL;訂單
中圖分類號 TP3 文獻(xiàn)標(biāo)識碼 A 文章編號 1674-6708(2018)218-0156-03
1 網(wǎng)上訂餐系統(tǒng)設(shè)計(jì)
1.1 系統(tǒng)設(shè)計(jì)內(nèi)容概述
網(wǎng)上訂餐系統(tǒng)分為兩類:前臺用戶注冊后可以進(jìn)行查詢菜單信息,訂購餐飲,修改會員資料等;后臺管理員可以對餐飲信息進(jìn)行管理,可以管理注冊會員,并進(jìn)行餐飲訂單處理。
1.1.1 系統(tǒng)的主要功能結(jié)構(gòu)
1)為了全力保證網(wǎng)上交易的安全性以及成功率,用戶注冊時需要提供詳細(xì)個人信息,登錄系統(tǒng)后,根據(jù)自身情況可以修改自己的注冊資料以及進(jìn)行餐飲的定單查詢等一系列功能,離開時則可以放心退出訂餐系統(tǒng)。
2)系統(tǒng)具有較為強(qiáng)大的查詢功能,用戶可以通過多種方式查詢和找到菜品;餐飲有普通菜品和飲料之分,用戶可以根據(jù)需進(jìn)行訂購。
3)用戶訂購餐飲流程:瀏覽菜單、將所需餐飲放入購物車中、填寫個人詳細(xì)資料,然后生成一個對應(yīng)的訂單號碼,用戶需要自己細(xì)心記住其訂單號碼,并且可以查詢是否需要進(jìn)行處理,后臺管理員會發(fā)現(xiàn)有些新的訂單生成,進(jìn)行對應(yīng)的處理。
1.1.2 系統(tǒng)的結(jié)構(gòu)流程設(shè)計(jì)
管理員進(jìn)入用戶登錄系統(tǒng),擁有管理用戶信息、進(jìn)行訂單管理等管理員權(quán)限;用戶想要登錄用戶登錄系統(tǒng),則首先要進(jìn)行注冊,當(dāng)系統(tǒng)用戶已注冊,則可輸入正確賬號與密碼直接登錄系統(tǒng)。當(dāng)用戶成功登錄進(jìn)入該系統(tǒng)之后,用戶便可進(jìn)行相應(yīng)的操作來訂購餐飲。
1.1.3 系統(tǒng)的層次結(jié)構(gòu)設(shè)計(jì)
對于系統(tǒng)的層級結(jié)構(gòu)而言,用戶注冊成為會員后就可以進(jìn)行相應(yīng)的功能操作:包括餐飲檢索、訂購餐飲、確認(rèn)訂單等。用戶打開檢索窗口、輸入菜品名稱后,系統(tǒng)便會從數(shù)據(jù)庫中找到對應(yīng)菜品,之后自動生成餐飲列表視圖,從而使用戶在瀏覽器更加直觀的看到。而管理員可以查看客戶的訂單信息,按照訂單信息來發(fā)貨等操作。餐飲管理員還可對餐飲信息進(jìn)行必要的增加、刪除和修改等操作。
完整的用戶請求響應(yīng)過程如下:用戶先是通過操作瀏覽器對客戶端發(fā)出請求,接著Web服務(wù)器就會對該請求進(jìn)行分析,之后再對數(shù)據(jù)庫發(fā)出請求,數(shù)據(jù)庫會查找系統(tǒng)中已經(jīng)擁有的數(shù)據(jù),提取與用戶請求相對應(yīng)的數(shù)據(jù),回復(fù)給Web服務(wù)器,回復(fù)結(jié)果會以JSP代碼形式響應(yīng)。由此可見,Web服務(wù)器對完成整個請求響應(yīng)過程起到必不可少的作用。
1.2 系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)
1.2.1 數(shù)據(jù)庫的概念設(shè)計(jì)
系統(tǒng)的數(shù)據(jù)庫在該網(wǎng)上訂餐系統(tǒng)中具有相當(dāng)重要的作用,正確合理的運(yùn)用數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)可以很好地提高系統(tǒng)性能,保證運(yùn)行速度和信息安全。依據(jù)存儲信息的類別,網(wǎng)上訂餐系統(tǒng)共有五個實(shí)體,各個實(shí)體存儲的數(shù)據(jù)內(nèi)容和作用各不相同,用戶信息實(shí)體主要用來存儲用戶的信息,與之相對應(yīng)的就是管理員信息實(shí)體。餐飲信息實(shí)體則存儲著各類菜品的數(shù)據(jù)信息。訂單明細(xì)實(shí)體對于用戶下的每一個訂單都進(jìn)行了記錄,其中,用戶提交的訂單可以是一張或者是多張;一張訂單可以只有一個菜品,也可以包含多條明細(xì);而購物車實(shí)體則儲存和提取用戶在下單之前放入購物車備選的菜品,一個購物車可以放入若干菜品。
1.2.2 數(shù)據(jù)庫的邏輯設(shè)計(jì)
數(shù)據(jù)庫設(shè)計(jì)在系統(tǒng)設(shè)計(jì)過程中占據(jù)非常重要的地位。數(shù)據(jù)作為系統(tǒng)設(shè)計(jì)的基礎(chǔ)部分,數(shù)據(jù)的不夠合理將會為系統(tǒng)的開發(fā)過程乃至到后期的系統(tǒng)維護(hù)埋下隱患。除了管理員實(shí)體外,該系統(tǒng)對會員用戶、餐飲信息以及訂單進(jìn)行相應(yīng)的管理。該系統(tǒng)需要的數(shù)據(jù)實(shí)體如下所示:
1)會員用戶的數(shù)據(jù)實(shí)體:該實(shí)體的功能和作用包括用戶基本信息的記錄。
2)餐飲的數(shù)據(jù)實(shí)體:該實(shí)體的功能和作用包括餐飲編號、餐飲的名稱、價格等餐飲信息的記錄。
3)訂單明細(xì)的數(shù)據(jù)實(shí)體:該實(shí)體的功能和作用包括訂單編號、訂購數(shù)量等訂單信息的記錄。
4)管理員的數(shù)據(jù)實(shí)體:用于記錄管理員的各種基本信息,包括管理員編號、用戶名以及密碼。
2 系統(tǒng)詳細(xì)設(shè)計(jì)與編碼實(shí)現(xiàn)
2.1 客戶端模塊的設(shè)計(jì)
2.1.1 頁面的搭建
網(wǎng)上訂餐系統(tǒng)的主頁是用戶進(jìn)入系統(tǒng)之后首先看到的頁面,良好的頁面設(shè)計(jì)效果將會吸引大量的客流量,進(jìn)一步會增加網(wǎng)上訂餐的銷售量,所以良好的頁面設(shè)計(jì)對吸引顧客光顧該系統(tǒng)起到至關(guān)重要的作用。該系統(tǒng)客戶端的主頁面主要分為3部分。
該頁面的構(gòu)建應(yīng)用了
2.1.3 用戶注冊模塊的設(shè)計(jì)和實(shí)現(xiàn)
用戶只有通過注冊后才可以成功登錄該系統(tǒng)網(wǎng)站,并且需要通過登錄模塊的驗(yàn)證才可以進(jìn)行網(wǎng)上訂購餐飲。在該模塊系統(tǒng)中,對于沒有注冊的用戶,還是可以瀏覽一些宣傳和菜品介紹的頁面的,也能夠進(jìn)行部分菜品的查詢,但是權(quán)限受限,無法進(jìn)行下訂單、結(jié)賬等一系列操作。只有用戶成功注冊并且成功登錄本該模塊系統(tǒng)后,才能進(jìn)入訂餐的模塊系統(tǒng)。
注冊窗口位于餐飲首頁界面的右上角,用戶如果想要注冊成為普通會員,就需要點(diǎn)擊右上角進(jìn)入注冊界面填寫信息、注冊會員,當(dāng)用戶進(jìn)入注冊窗口時并按照注冊要求和提示提交自身的注冊信息后,系統(tǒng)就會自動的對用戶提交的信息進(jìn)行驗(yàn)證。具體而言,對于信息的驗(yàn)證主要包括兩個方面,首先是用戶名、密碼不能為空,其次為確認(rèn)密碼和密碼必須一致。如果注冊用戶填寫的信息驗(yàn)證成功,信息會自動提交并且寫入數(shù)據(jù)庫。注冊需要填寫的個人信息包括真實(shí)姓名、用戶密碼、聯(lián)系電話等。
該系統(tǒng)規(guī)定只有本訂餐系統(tǒng)的會員才有上網(wǎng)訂購餐飲資格,這樣才可以進(jìn)行購物車以及生成訂單等操作。非會員只可以進(jìn)行簡單的餐飲瀏覽,公告信息,以及餐飲信息的查看。而會員如果想要下訂單訂餐,首先要進(jìn)入系統(tǒng)登錄界面登錄,在“用戶名”和“密碼”獲得驗(yàn)證、確定登錄成功以后,用戶就會以普通會員的身份獲得相對應(yīng)的權(quán)限,能夠自主下訂單訂餐。
在該模塊當(dāng)中應(yīng)用到了JavaBean,用它來實(shí)現(xiàn)頁面跳轉(zhuǎn)功能以及實(shí)現(xiàn)與用戶信息相對應(yīng)的數(shù)據(jù)的存儲功能。它的具體屬性與數(shù)據(jù)庫表中的用戶信息相關(guān)的所有字段相對應(yīng),主要作用就是用來存儲注冊頁面當(dāng)中的所提交的表單數(shù)據(jù)。主要的jsp代碼如下所示:
< j s p : s e t P r o p e r t y? name=”userInfo”property=”*”/>