
![基于.net的在線訂餐系統(tǒng)設(shè)計與開發(fā)論文[帶程序]_第1頁](https://static.zsdocx.com/FlexPaper/FileRoot/2019-6/6/21/d2f01265-bbf8-4a94-affd-dfcfe233644e/d2f01265-bbf8-4a94-affd-dfcfe233644e1.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 編號</b></p><p><b> 無錫太湖學(xué)院</b></p><p><b> 畢業(yè)設(shè)計(論文)</b></p><p> 題目: 基于.NET的在線訂餐系統(tǒng) </p><p> 設(shè)計與開發(fā)
2、 </p><p> 信機 系 計算機科學(xué)與技術(shù) 專業(yè)</p><p> 學(xué) 號: </p><p> 學(xué)生姓名: </p><p> 指導(dǎo)教師: (職稱:副教授 )</p><p> ?。毞Q: )</p><p
3、> 2013年 5 月25 日</p><p> 無錫太湖學(xué)院本科畢業(yè)設(shè)計(論文)</p><p><b> 誠 信 承 諾 書</b></p><p> 本人鄭重聲明:所呈交的畢業(yè)設(shè)計(論文) 基于.NET的在線訂餐系統(tǒng)設(shè)計與開發(fā) 是本人在導(dǎo)師的指導(dǎo)下獨立進行研究所取得的成果,其內(nèi)容除了在畢業(yè)設(shè)計(論文)中特別加以標(biāo)注引用
4、,表示致謝的內(nèi)容外,本畢業(yè)設(shè)計(論文)不包含任何其他個人、集體已發(fā)表或撰寫的成果作品。</p><p> 班 級: 計科94 </p><p> 學(xué) 號: 0921125 </p><p> 作者姓名: </p><p> 2013 年 5 月 25 日</p>
5、<p><b> 摘 要</b></p><p> 隨著計算機網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,網(wǎng)絡(luò)已成為人們?nèi)粘I畹囊徊糠?。越來越多的人喜歡上了網(wǎng)購這種便捷的方式,因此在線訂餐也受到了人們的歡迎。</p><p> 本系統(tǒng)分為兩大模塊:前臺模塊和后臺模塊。前臺登錄模塊主要實現(xiàn)了用戶注冊、用戶登錄、找回密碼的功能。用戶登錄后能夠?qū)Σ似愤M行查詢、預(yù)定、加入購物車、
6、訂單、支付、退款。用戶在我的訂單下可對訂單進行查詢、個人資料的修改。用戶在社區(qū)家園里可以進行留言并查看他人留言。在后臺模塊中,普通管理員能夠查看用戶信息,查詢并回復(fù)用戶留言,對菜品詳細(xì)信息、菜品類型進行查詢及增刪改,對用戶訂單可查詢及批量刪除,還可實時更改公告欄信息。超級管理員除了上述操作外,還能查詢所有管理員信息,增加或刪除某個管理人員,修改管理員權(quán)限。</p><p> 經(jīng)過分析,本系統(tǒng)使用Visual S
7、tudio 2005和SQL-Server2000作為開發(fā)工具,開發(fā)出了以B/S為模式的基于ASP.NET的在線訂餐系統(tǒng)。</p><p> 關(guān)鍵詞: ASP.NET;在線訂餐系統(tǒng);SQL-Server;Visual Studio</p><p><b> Abstract</b></p><p> With the continuous
8、 development of computer network technology,the network has become a part of our daily live. These days more and more people prefer online shopping as it is convenient, so ordering online has also been welcomed by many p
9、eople. </p><p> The system is divided into two modules: front module and background module. The front module mainly realize the functions of user registration, user login, Retrieve password. After Users log
10、 in,they can inquire and reserve the dishes ,add dishes to the cart ,even make the order , pay or refund the dishes. Users can inquire the order ,change their information under the menu of “my order”. Users can also chec
11、k messages from others in the community homestead. In the background module, normal admin</p><p> After analysis, the system uses Visual Studio 2005 and SQL Server 2000 as a development tool, Develop ASP.N
12、ET-based online reservation system with B / S mode.</p><p> Key words: ASP.NET; online reservation system ; SQL - Server ; Visual Studio</p><p><b> 目 錄</b></p><p><
13、;b> 摘 要II</b></p><p> AbstractIII</p><p><b> 目 錄V</b></p><p><b> 1 緒論V</b></p><p> 1.1在線訂餐系統(tǒng)的研究內(nèi)容和意義1</p><p>
14、 1.2國內(nèi)外訂餐系統(tǒng)的發(fā)展概況1</p><p> 1.3在線訂餐系統(tǒng)應(yīng)達到的要求1</p><p><b> 1.4開發(fā)環(huán)境2</b></p><p> 1.5本文主要內(nèi)容2</p><p><b> 2相關(guān)技術(shù)介紹3</b></p><p> 2.1
15、 ASP.NET技術(shù)3</p><p> 2.2 SQL Server 2000介紹4</p><p> 2.3 C#語言5</p><p> 2.4 B/S結(jié)構(gòu)6</p><p> 2.4 本章小節(jié)6</p><p> 3在線訂餐系統(tǒng)分析7</p><p> 3.1 可
16、行性研究7</p><p> 3.2 需求分析8</p><p> 3.2.1 功能需求分析8</p><p> 3.2.2 數(shù)據(jù)庫需求分析8</p><p> 3.2.3 數(shù)據(jù)流圖9</p><p> 3.2.4 數(shù)據(jù)字典11</p><p> 3.3 流程圖12&l
17、t;/p><p> 3.4 本章小節(jié)12</p><p> 4 在線訂餐系統(tǒng)總體設(shè)計13</p><p> 4.1 系統(tǒng)模塊圖13</p><p> 4.1.1前臺功能模塊13</p><p> 4.1.2 后臺功能模塊14</p><p> 4.2 數(shù)據(jù)庫設(shè)計15</
18、p><p> 4.2.1 數(shù)據(jù)庫概念設(shè)計(E-R圖)15</p><p> 4.2.2 數(shù)據(jù)庫邏輯設(shè)計17</p><p> 4.2.3 數(shù)據(jù)庫物理設(shè)計21</p><p> 4.2.5 數(shù)據(jù)庫關(guān)系圖22</p><p> 4.3 本章小節(jié)22</p><p> 5在線訂餐系統(tǒng)
19、的實現(xiàn)23</p><p> 5.1 前臺系統(tǒng)的實現(xiàn)23</p><p> 5.1.1 在線餐系統(tǒng)首頁23</p><p> 5.1.2 菜單查詢與菜品詳細(xì)信息界面24</p><p> 5.1.3 預(yù)訂服務(wù)界面26</p><p> 5.1.4 我的訂單界面30</p><p
20、> 5.1.5 社區(qū)家園界面36</p><p> 5.1.6 用戶登錄與注冊界面38</p><p> 5.2 后臺系統(tǒng)的實現(xiàn)43</p><p> 5.2.1 登錄界面43</p><p> 5.2.2 用戶管理43</p><p> 5.2.3 菜品管理45</p>&
21、lt;p> 5.2.4 訂單管理界面46</p><p> 5.2.5 管理員管理47</p><p> 5.2.6 公告欄界面47</p><p> 5.2.7 留言板界面48</p><p> 5.3 本章小節(jié)48</p><p><b> 6系統(tǒng)測試49</b>
22、</p><p> 6.1 測試方案49</p><p> 6.2 測試過程49</p><p> 6.3 本章小節(jié)49</p><p> 7 結(jié)論與展望51</p><p><b> 7.1 結(jié)論51</b></p><p> 7.2 不足之處及未來
23、展望51</p><p><b> 致 謝53</b></p><p><b> 參考文獻54</b></p><p><b> 附 錄55</b></p><p><b> 1 緒論</b></p><p>
24、 1.1 在線訂餐系統(tǒng)的研究內(nèi)容和意義</p><p> 現(xiàn)在是個屬于互聯(lián)網(wǎng)的世紀(jì),網(wǎng)絡(luò)技術(shù)的迅速發(fā)展使之成為了社會生活的一個十分重要的部分。各行各業(yè)的人們都在運用這一技術(shù),為顧客提供更方便周到的服務(wù)。它給各個行業(yè)創(chuàng)造了無限的發(fā)展商機與巨大的經(jīng)濟效益。</p><p> 中國自古就有“國以民為本,民以食為天”的說法。隨著人們生活水平的不斷提高,對于實物的要求也從吃到飽吃到好變?yōu)槌缘慕】?/p>
25、有營養(yǎng)。酒店餐廳的競爭日趨激烈,更加突顯出改革的重要性。這種趨勢迫使各大飲食行業(yè)尋求新的銷路、降低管理成本、提供特色服務(wù)和培養(yǎng)忠實客戶等方法來提高餐廳的核心競爭力。而最為有效的方法就是應(yīng)用先進的信息管理技術(shù),給飲食行業(yè)注入新鮮的血液。在線訂餐系統(tǒng)的開發(fā)正是如此,不僅能夠給飲食行業(yè)帶來生機和活力,而且能提高餐廳的知名度。</p><p> 在線訂餐不僅能夠方便消費者,使用戶可以足不出戶訂購、瀏覽菜品。而且餐廳可以
26、根據(jù)在線訂餐系統(tǒng)中用戶的訂單記錄,建立起自己潛在顧客資料。最為明顯的是在進行優(yōu)惠活動時,能夠根據(jù)不同用戶的消費情況制定具體的促銷方式。這樣以來的促銷更有針對性、實用性。</p><p> 1.2 國內(nèi)外訂餐系統(tǒng)的發(fā)展概況</p><p> 現(xiàn)在我國多數(shù)餐廳使用的訂餐方式仍是電話訂餐。然而這種訂餐方式存在著許多的不足,如效率低,需人工記錄,而且容易遺漏和出錯。因此在線訂餐的出現(xiàn)順應(yīng)了時代
27、的需求。當(dāng)然也有商家發(fā)現(xiàn)了新的市場開發(fā)網(wǎng)上業(yè)務(wù)。近幾年來國內(nèi)在線訂餐發(fā)展迅速,因為在線訂餐模式的成本低,又有巨大的市場,從事在線訂餐的網(wǎng)站如雨后春筍般的出現(xiàn)。由于國內(nèi)關(guān)注在線訂餐的人數(shù)有限,而且比較集中在白領(lǐng)、大學(xué)生等青年群體中,以一線城市為主要市場,區(qū)域性比較明顯。所以總體來說,我國的在線訂餐業(yè)務(wù)才剛剛起步,仍然存有很大的發(fā)展空間。</p><p> 國外的許多知名餐飲企業(yè)在多年前就已經(jīng)開始了出現(xiàn)網(wǎng)上訂餐服務(wù)
28、,并且受到了許多人士的歡迎。最近幾年網(wǎng)上訂餐服務(wù)也在中國陸續(xù)推出、逐漸普及。</p><p> 1.3 在線訂餐系統(tǒng)應(yīng)達到的要求</p><p> ?、?說明在線訂餐的指導(dǎo)思想;闡述在線訂餐系統(tǒng)應(yīng)解決的主要問題。 </p><p> ⑵ 用戶可以進行多條件查詢,根據(jù)具體需要方便、迅速的找到所需信息。</p><p> ⑶ 系統(tǒng)中的信息采
29、用動態(tài)式發(fā)布,信息的發(fā)布更新的實時。且在線訂餐采用動態(tài)網(wǎng)頁技術(shù)實現(xiàn)內(nèi)容發(fā)布。</p><p> ?、?系統(tǒng)要有良好的互動性,方便用戶提供建議與意見。</p><p> ?、?系統(tǒng)要有清晰的構(gòu)架、友好美觀的界面。</p><p><b> 1.4 開發(fā)環(huán)境</b></p><p><b> ?、?服務(wù)器端<
30、;/b></p><p> 操作系統(tǒng):Windows XP</p><p> 數(shù)據(jù)庫服務(wù)器:SQL Server2000</p><p><b> 瀏覽器:IE瀏覽器</b></p><p><b> ?、?客戶器端</b></p><p><b>
31、瀏覽器:IE瀏覽器</b></p><p> 1.5 本文主要內(nèi)容</p><p> 本文通過需求分析對在線訂餐系統(tǒng)進行總體規(guī)劃,開發(fā)出一個基于B/S模式的在線訂餐系統(tǒng)。本在線訂餐系統(tǒng)按照軟件工程的基本步驟進行系統(tǒng)分析、設(shè)計和實現(xiàn)。本文的具體結(jié)構(gòu)安排如下:</p><p> 第一部分緒論主要闡明在線訂餐系統(tǒng)的研究內(nèi)容與意義,國內(nèi)外的訂餐系統(tǒng)的發(fā)展?fàn)?/p>
32、況,以及系統(tǒng)應(yīng)達到的要求。</p><p> 第二部分主要內(nèi)容是相關(guān)技術(shù)的介紹,介紹了系統(tǒng)開發(fā)工具的優(yōu)勢所在。</p><p> 第三部分是對軟件進行可行性分析與需求分析,分析了系統(tǒng)要達到的主要功能等。給出了系統(tǒng)的整體流程圖。</p><p> 第四部分主要是系統(tǒng)模塊設(shè)計和數(shù)據(jù)庫的設(shè)計,描述了系統(tǒng)前后臺的主要模塊,數(shù)據(jù)庫概念設(shè)計、邏輯設(shè)計和物理設(shè)計。</
33、p><p> 第五部分主要講述了在線訂餐系統(tǒng)的實現(xiàn),前后臺的主要界面和代碼。</p><p> 第六部分對系統(tǒng)實現(xiàn)功能的測試,</p><p> 第七部分是對本文的結(jié)論和展望,總結(jié)了完成本系統(tǒng)后自己的感悟與系統(tǒng)存在的不足之處。</p><p> 最后,感謝對于在完成這次論文與軟件過程中給予幫助的人,列出參考文獻。 </p>
34、<p><b> 2 相關(guān)技術(shù)介紹</b></p><p> 2.1 ASP.NET技術(shù)</p><p> ASP.NET不僅僅是Active Server Page的繼承版本,還是一種建立在通用語言上的程序構(gòu)架,能被應(yīng)用于一臺Web服務(wù)器來建立強大的Web應(yīng)用程序。ASP.NET具有許多比現(xiàn)在的Web開發(fā)模式更加強大的優(yōu)勢[1]。</p>
35、<p><b> ?、?增強的性能:</b></p><p> ASP.NET 是在服務(wù)器上運行的編譯好的公共語言運行庫代碼。與被解釋的前輩不同,ASP.NET 利用本機優(yōu)化、實時編譯、盒外緩存和早期綁定服務(wù)。這相當(dāng)于在編寫代碼行之前便顯著提高了性能[1]。</p><p> ?、?世界級的工具支持:</p><p> ASP
36、.NET Framework 補充了 Visual Studio 集成開發(fā)環(huán)境中的大量設(shè)計器和工具箱。WYSIWYG 編輯、拖放服務(wù)器控件和自動部署只是這個強大的工具所提供功能中的少數(shù)幾種[1]。</p><p><b> ?、?威力和靈活性:</b></p><p> 由于 ASP.NET 基于公共語言運行庫,因此 Web 應(yīng)用程序開發(fā)人員可以利用整個平臺的靈活性
37、和威力。.NET Framework 類庫、消息處理和數(shù)據(jù)訪問解決方案都可從 Web 無縫訪問。ASP.NET 與語言無關(guān),所以可以跨多種語言分割應(yīng)用程序,或選擇最適合應(yīng)用程序的語言。另外,公共語言運行庫的交互性保證在遷移到 ASP.NET 時保留基于 COM 的開發(fā)中的現(xiàn)有投資[1]。</p><p><b> ⑷ 簡易性:</b></p><p> ASP.N
38、ET 執(zhí)行常見任務(wù)十分的容易,從簡單的窗體提交和客戶端身份驗證到部署和站點配置。像ASP.NET 頁框架使您可以生成將應(yīng)用程序邏輯與表示代碼清楚分開的用戶界面,和在類似 Visual Basic 的簡單窗體處理模型中處理事件。另外,公共語言運行庫利用托管代碼服務(wù)簡化了開發(fā)[1]。</p><p><b> ?、?可管理性:</b></p><p> ASP.NET
39、采用基于文本的分層配置系統(tǒng),簡化了將設(shè)置應(yīng)用于Web 應(yīng)用程序和服務(wù)器環(huán)境。因為配置信息是用純文本形式存儲的,所以可以在沒有本地管理工具幫助的情況下應(yīng)用新設(shè)置。此“零本地管理”哲學(xué)擴展到了 ASP.NET Framework 應(yīng)用程序的部署。只要將所要的文件復(fù)制到服務(wù)器,即可將 ASP.NET Framework 應(yīng)用程序部署到服務(wù)器。而不需要將重新啟動服務(wù)器,是在替換或者部署運行的編譯代碼時[1]。</p><p&
40、gt; ?、?可縮放性和可用性:</p><p> ASP.NET 在設(shè)計時考慮了可縮放性,增加了專門用于在多處理器環(huán)境和聚集環(huán)境中提高性能的功能。另外,進程受到 ASP.NET 運行庫的密切監(jiān)視和管理,以便當(dāng)進程行為不正常如泄漏、死鎖時,可就地創(chuàng)建新進程,用來幫助保持應(yīng)用程序始終可用于處理請求[1]。</p><p> ?、?自定義性和擴展性:</p><p>
41、 ASP.NET 隨附了一個設(shè)計周到的結(jié)構(gòu),開發(fā)人員可以在適當(dāng)?shù)募墑e“插入”代碼。實際上,可以用自己編寫的自定義組件擴展或替換 ASP.NET 運行庫的任何子組件。實現(xiàn)自定義身份驗證或狀態(tài)服務(wù)一直沒有變得更容易[1]。</p><p><b> ?、?安全性:</b></p><p> 借助內(nèi)置的 Windows 身份驗證和基于每個應(yīng)用程序的配置,可以保證應(yīng)用程序
42、是安全的[1]。</p><p> 2.2 SQL Server 2000介紹</p><p> 對存放在計算機中的數(shù)據(jù)庫進行檢索、管理和組織時可以使用SQL語言。SQL一詞是“Structured Query Language”的縮寫,是IBM公司San Jose實驗室為System R而設(shè)計的語言,從1982年開始,美國國家標(biāo)準(zhǔn)協(xié)會即著手SQL標(biāo)準(zhǔn)化工作,1986年ANSI的數(shù)據(jù)庫
43、委員會批準(zhǔn)了SQL作為關(guān)系數(shù)據(jù)庫語言的美國標(biāo)準(zhǔn),這就是第一個SQL標(biāo)準(zhǔn),同時公布了SQL標(biāo)準(zhǔn)文本,在此后不久的1987年,國際標(biāo)準(zhǔn)化組織也做出了同樣的決定,目前的SQL標(biāo)準(zhǔn)是1992年指定的SQL—92標(biāo)準(zhǔn),是一種用于與數(shù)據(jù)庫進行交互的語言。SQL語言的極大普及是當(dāng)今計算機工業(yè)中最引人注目的趨勢之一。過去的幾年中,SQL已經(jīng)發(fā)展成為標(biāo)準(zhǔn)計算機數(shù)據(jù)庫查詢語言?,F(xiàn)在,微機到大型機,有很多數(shù)據(jù)庫產(chǎn)品支持SQL,SQL的國際標(biāo)準(zhǔn)已經(jīng)能夠被采用并
44、被不斷擴充。SQL在主要計算機開發(fā)上的數(shù)據(jù)庫體系中占有重要的地位[2]。</p><p> SQL Server提供服務(wù)器端的軟件,這部分需要安裝在NT Server上,SQL Server的用戶端則可以安裝在許多用戶端PC系統(tǒng)中,Windows可以讓用戶端進行數(shù)據(jù)庫的建立,維護及存取等操作,SQL Server可以最多定義32767個數(shù)據(jù)庫,每個數(shù)據(jù)庫中,可以定義20億個表格,每個表格可以有250個字段,每個
45、表格的數(shù)據(jù)個數(shù)并沒有限制,每一個表格可以定義250個索引,其中有一個可以是Clustered索引。 SQL Server所使用的數(shù)據(jù)庫查詢語言稱為Transact-SQL,它是SQL Server的核心,Transact-SQL強化了原有的SQL關(guān)鍵字以進行數(shù)據(jù)的存取,儲存及處理等功能,Transact-SQL擴充了流程控制指定,可以使你方便的編寫功能強大的存儲過程,他們存放在服務(wù)器端,并預(yù)先編譯過,執(zhí)行速度非常塊,觸發(fā)是一種特殊的存儲
46、過程,用來確保SQL Server數(shù)據(jù)庫引用的完整性,你可以建立插入,刪除和更新觸發(fā)以控制相關(guān)的表格中對數(shù)據(jù)列的插入,刪除和更新,你還可以使用規(guī)則(Rule),缺?。╠efault)以及限制(Constraints),來協(xié)助將新的數(shù)值套用</p><p> ?、?SQL為控制服務(wù)器的數(shù)據(jù)提供的功能:</p><p> ?、贁?shù)據(jù)定義②數(shù)據(jù)檢索③數(shù)據(jù)完整性④數(shù)據(jù)處理⑤安全性⑥并發(fā)訪問</
47、p><p> SQL支持對數(shù)據(jù)的并發(fā)的訪問、多個用戶可以同時使用系統(tǒng)而互不干擾,作為關(guān)系型數(shù)據(jù)庫領(lǐng)域出類拔萃的產(chǎn)品,Microsoft SQL Server 2005數(shù)據(jù)庫管理系統(tǒng)可以滿足各種類型的不同用戶和獨立軟件供應(yīng)商商業(yè)程序的要求。在最近的幾年中,微軟大力改進了SQL Server,使得它具有很多新穎的、有創(chuàng)造性的特點。Microsoft SQL Server 2005,它是用于大規(guī)模聯(lián)機事務(wù)處理、數(shù)據(jù)倉庫和
48、電子商務(wù)應(yīng)用的數(shù)據(jù)庫平臺;也是用于數(shù)據(jù)集成、分析和報表解決方案的商業(yè)智能平臺[2]。</p><p> ?、?ADO.NET訪問數(shù)據(jù)庫的原理</p><p> 與數(shù)據(jù)庫相連,ADO.NET提供了如下三種方式:通過ODBC相連;通過OLEDB相連;直接與SQL Server相連。三種方式由于應(yīng)用層次的差異,使得效率由低到高,獨立性由高到低。對于相連數(shù)據(jù)庫的數(shù)據(jù)處理,也有兩種方式,即一種是通
49、過Dataset來隔離異構(gòu)的數(shù)據(jù)源,另一種是以流方式從數(shù)據(jù)源讀取Data Reader方式[2]。</p><p> 傳統(tǒng)的應(yīng)用程序是通過先建立到數(shù)據(jù)庫的連接,在程序的整個運行過程中維護連接的方式來設(shè)計的。ASENET采取了斷開連接方式的數(shù)據(jù)結(jié)構(gòu)。當(dāng)瀏覽器向Web服務(wù)器請求網(wǎng)頁時,服務(wù)器處理這個請求,并將所請求的網(wǎng)頁發(fā)送給IE瀏覽器,然后連接就被斷開,直到瀏覽器發(fā)出下一個請求。為了在Web環(huán)境下傳輸數(shù)據(jù),Mic
50、rosoft對ADO記錄集進行了優(yōu)化。但COM類型轉(zhuǎn)換仍舊是一個必不可少的步驟,因為COM的數(shù)據(jù)類型不可能總是匹配ADO記錄集的數(shù)據(jù)類型,像String類型必須轉(zhuǎn)換成BSTR類型。由此,需要將ADO記錄集進行格式轉(zhuǎn)換。通常的做法是:先提取一個記錄集,把它保存為XML格式,然后傳輸結(jié)果數(shù)據(jù)流,讓接收者從這個XML數(shù)據(jù)流重新構(gòu)造出記錄集供以后使用。隨著對協(xié)同工作能力和可伸縮性要求的提高,ADO逐漸被建立在XML的基礎(chǔ)上ADO.NET取代。A
51、DO.NET的另一個創(chuàng)新是引入了數(shù)據(jù)集(Dataset)。一個數(shù)據(jù)集是內(nèi)存中提供數(shù)據(jù)關(guān)系圖的高速緩沖區(qū)。數(shù)據(jù)集對數(shù)據(jù)源一無所知,它們可以由程序或通過從數(shù)據(jù)倉庫中調(diào)入數(shù)據(jù)而被生成、填充。不論數(shù)據(jù)從何處獲取,數(shù)據(jù)集是通過使用同樣的程序模板而被操作的,并且它使用相同的潛</p><p><b> 2.3 C#語言</b></p><p> C#綜合了目前所有高級語言的優(yōu)
52、點,它具有以下幾個主要的特點[4]。</p><p><b> ?、?簡潔的語法</b></p><p> C#淘汰了C++中亂七八糟的表示符號和偽關(guān)鍵字,使用了統(tǒng)一的操作符,使用最常見、最簡單的形式進行描述[4]。</p><p> ⑵ 精心的面向?qū)ο笤O(shè)計</p><p> 從一開始,C#就是完全按照面相對象的思
53、想來設(shè)計的,因此他具有面向?qū)ο髴?yīng)有的一切特性:多態(tài)、繼承與封裝等[4]。</p><p> C#允許單繼承,從而避免了類型定義的混亂。在C#中每種類型都是一個對象,因此不存在全局參數(shù)、全局變量、全局函數(shù)等概念,所有的常量、屬性、索引、方法、變量、事件等都必須封裝在類中,從而使代碼具有更好的可讀性,并且減少了發(fā)生命名沖突的可能[4]。</p><p> ?、?與Web的緊密結(jié)合</p
54、><p> 由于Microsoft.NET構(gòu)建了Web服務(wù)模型和Web應(yīng)用程序開發(fā)模型,從而使網(wǎng)絡(luò)編程更像是對本地對象進行操作,從而使深層次、大規(guī)模的分布式開發(fā)成為可能。使用C#構(gòu)建的組件能夠方便地為Web服務(wù),并可以通過Internet被運行在任何操作系系統(tǒng)上的任何語言所調(diào)用[4]。</p><p> ?、?完全的安全性與錯誤處理</p><p> 衡量一種語言是
55、否優(yōu)秀的重要證據(jù):語言的安全性與錯誤處理能力。每個人都會出錯誤,即使是最熟練的程序員也不例外。如果這樣的軟件投入使用,查找與更改這些簡單錯誤的代價將會是讓人無法接受的。而C#消除了許多軟件開發(fā)中的常見錯誤,并提出了包括類型安全在內(nèi)的完整的安全性能[4]。</p><p> Microsoft.NET運行庫的代碼訪問安全特性允許用戶和管理員根據(jù)代碼的ID來配置安全等級。在默認(rèn)情況下,從Internet和Inter
56、net下載的代碼都不允許訪問任何本地文件和資源。另外,C#提供了溢出檢查和邊界檢查功能,內(nèi)存管理中的垃圾收集機制也使開發(fā)人員對內(nèi)存管理的負(fù)擔(dān)大大減輕了[4]。</p><p><b> ⑸ 版本處理技術(shù)</b></p><p> 對軟件系統(tǒng)中的組件模塊進行升級是一件容易產(chǎn)生錯誤的工作,在代碼修改過程中對某部分的修改可能會影響到代碼的其他部分,甚至導(dǎo)致程序崩潰。為了
57、幫助開發(fā)人員處理這些問題,C#內(nèi)置了版本空間功能,如函數(shù)重載和接口的處理方式和特性支持等,從而保證能夠方便地開發(fā)和升級復(fù)雜的軟件[4]。</p><p><b> ?、?靈活性和兼容性</b></p><p> 默認(rèn)狀態(tài)下,C#不能使用指針,但可以使用delegate(委托)來模擬指針的功能,如果確實需要在類的方法或者類中直接使用指針,只需聲明只寫內(nèi)容為非安全的就可
58、以了。另外, C#不支持類的多繼承,卻可以通過對接口的繼承來獲得這一功能 [4]。</p><p> 兼容性是指C#允許具有C++或C語言風(fēng)格的需要傳遞指針型參數(shù)API進行交互操作,允許其他語言組件間與C#組件的互相操作等[4]。</p><p><b> 2.4 B/S結(jié)構(gòu)</b></p><p> B/S結(jié)構(gòu)就是瀏覽器/服務(wù)器模式,它
59、是隨著網(wǎng)絡(luò)技術(shù)的興起,是對C/S結(jié)構(gòu)的一種改進或者變化的結(jié)構(gòu)。在這種結(jié)構(gòu)下,有兩種方式實現(xiàn):WWW瀏覽器、前端。其中用戶工作界面是通過前者來實現(xiàn),極少部分事務(wù)邏輯在后者實現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實現(xiàn),形成所謂三層結(jié)構(gòu)。這樣客戶端的電腦載荷就減少了,系統(tǒng)維護與升級的成本和工作量減輕了,用戶的總體成本也降低了。從現(xiàn)有技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,通過網(wǎng)絡(luò)或網(wǎng)絡(luò)模式下的數(shù)據(jù)庫應(yīng)用,相對成本較低、也易于把握。它能實現(xiàn)不同的人員,
60、以不同的操作共同和接入方式訪問的數(shù)據(jù)庫;能有效地管理訪問權(quán)限和保護數(shù)據(jù)平臺 [5]。</p><p><b> 2.5 本章小節(jié)</b></p><p> 本章介紹了在線訂餐系統(tǒng)設(shè)計過程中所涉及到的相關(guān)技術(shù),主要講解了ASP.NET的基礎(chǔ)知識,對ASP.NET進行了概括性的介紹。其中所涉及到的技術(shù)對軟件的開發(fā)十分重要,需要了解、掌握。</p><
61、;p> 3 在線訂餐系統(tǒng)分析</p><p><b> 3.1 可行性研究</b></p><p> 可行性研究是在進行初步調(diào)查后對所進行的系統(tǒng)開發(fā)的必要性和可能性的研究,所以也稱為可行性研究[6]。因此,對于任何一個需要開發(fā)的項目,在開發(fā)之前必須根據(jù)客戶提供的條件進行可行性分析,從而減少開發(fā)的風(fēng)險,避免資源的浪費。可行性分析應(yīng)從技術(shù)可行性,經(jīng)濟可行性和操
62、作可行性三方面來分析論證。通過對飲食市場的觀察與分析,在線訂餐系統(tǒng)具有可行性,具體分析如下放的內(nèi)容:</p><p><b> ?、?技術(shù)可行性</b></p><p> 技術(shù)可行性分析主要分析的是在現(xiàn)有的技術(shù)條件下是否能夠?qū)崿F(xiàn)這個系統(tǒng)?,F(xiàn)有的技術(shù)完全能夠?qū)崿F(xiàn)在線訂餐的開發(fā)現(xiàn)實。本系統(tǒng)可以采用了Visual Studio 2005和SQL Server 2000進行
63、相關(guān)的開發(fā),并且Visual Studio 2005整合了XML、關(guān)系型數(shù)據(jù)、對象的訪問方式,它的語言更加簡練。使用Visual Studio 2005可以高效開發(fā)Windows應(yīng)用程序。 它是面向?qū)ο蟮目梢暬浖_發(fā)工具,其對編程平臺對數(shù)據(jù)庫的訪問做了很好的封裝,數(shù)據(jù)庫接口的轉(zhuǎn)換只需動態(tài)更改控件的相關(guān)屬性即可;另考慮到SQL Server數(shù)據(jù)庫服務(wù)器用戶,亦提供SQL Server數(shù)據(jù)庫接口,微軟公司的SQL Server數(shù)據(jù)庫,它能
64、夠處理大量數(shù)據(jù),同時保持?jǐn)?shù)據(jù)的完整性并提供許多高級管理功能。它的易用性、安全性和靈活性也為數(shù)據(jù)庫編程提供了良好的條件。此外,科技飛速發(fā)展的今天,硬件更新的速度越來越快,容量越來越大,可靠性越來越高,價格越來越低,其硬件平臺完全能滿足在線訂餐系統(tǒng)的需要。</p><p> 在線訂餐系統(tǒng)屬于一個中等規(guī)模的電子商務(wù)系統(tǒng)。它基本屬于一個數(shù)據(jù)庫應(yīng)用類的Web應(yīng)用系統(tǒng)。其基本操作還是對數(shù)據(jù)進行添加、刪除、查找、編輯等。所以
65、就單單看數(shù)據(jù)庫應(yīng)用,暫不存在太大的技術(shù)問題。</p><p><b> ⑵ 經(jīng)濟可行性</b></p><p> 經(jīng)濟可行性主要是對系統(tǒng)的經(jīng)濟效益進行評價,評估項目的開發(fā)成本,估算開發(fā)成本是否會超過項目預(yù)算的全部利潤。像酒店餐廳這樣的營業(yè)性場所,其經(jīng)濟成分比重相對較多,主要是支出的費用:其中包括軟件開發(fā)費用、管理和維護費、設(shè)備購置費、人員工資和培訓(xùn)費等。</
66、p><p> 而且目前計算機的價格已經(jīng)十分低廉,大多數(shù)家庭都備有一臺計算機,并且計算機的性能也有了很大的提高,所以對于餐廳來說完全具有經(jīng)濟可行性。開發(fā)本系統(tǒng)對系統(tǒng)開發(fā)者來說,并不需要太高的成本支出,開發(fā)周期也不需太長,不僅節(jié)省了人力、物力、財力、資源,這也是一種長遠的投資。對于一般的小型企業(yè),建立一個在線訂餐系統(tǒng),投入的資金、人力并不大。這對于有一定經(jīng)濟基礎(chǔ)的餐廳來說,建立這樣一個在線訂餐系統(tǒng)難度并不大。這樣就能節(jié)
67、省大量的人力、時間及財力。所以,本系統(tǒng)在經(jīng)濟上是可行的。</p><p><b> ?、?操作可行性</b></p><p> 現(xiàn)如今信息技術(shù)發(fā)展迅速,計算機技術(shù)和軟件技術(shù)的更新,餐廳完全有能力有必要引進這樣領(lǐng)先的銷售技術(shù)。在線訂餐系統(tǒng)對整個餐廳的管理理念有很大的影響,對餐廳工作員工的綜合素質(zhì)有了更高得要求,這會在無形之中提高酒店餐廳的整體服務(wù)質(zhì)量。而且系統(tǒng)操作簡單
68、方便,各大餐廳酒店企業(yè)完全能夠行得通。</p><p> 有此可知,在線訂餐系統(tǒng)的開發(fā)在在技術(shù)和經(jīng)濟等方面都具有極高的可行性,并且能夠帶來良好的效益。</p><p><b> 3.2 需求分析</b></p><p> 需求分析階段要解決的核心問題是:系統(tǒng)是干什么的?系統(tǒng)有哪些功能?軟件定義時期的最后一個階段是需求分析,它的基本任務(wù)是準(zhǔn)
69、確的定位系統(tǒng)的功能,以滿足用戶的要求。這個階段不是要確定系統(tǒng)怎樣完成他的功能,而是要確定系統(tǒng)一定要具備哪些功能,也就是對系統(tǒng)提出具體、清晰、準(zhǔn)確、完整的要求[6]。</p><p> 3.2.1 功能需求分析</p><p> 在線訂餐系統(tǒng)隨著互聯(lián)網(wǎng)的迅猛發(fā)展越來越受到人們的重視,而在線訂餐這一新的營銷模式的出現(xiàn)更是顛覆了傳統(tǒng)的經(jīng)營方式,不僅能夠提高銷量。降低運作成本,增加了餐廳的競爭
70、力。對大多數(shù)餐飲企業(yè)來說,建立一個在線訂餐系統(tǒng)勢在必行。</p><p> 所以在線訂餐系統(tǒng)應(yīng)實現(xiàn)的功能主要包括:</p><p><b> ?、?前臺功能</b></p><p> 用戶信息管理:用戶可以在登錄后可以對其資料進行修改,系統(tǒng)的部分信息只對登錄的注冊用戶開放。還沒有賬號的用戶可以進行注冊。如有用戶忘記密碼,可以根據(jù)提示問題找回
71、密碼。</p><p> 菜品信息管理:用戶可以根據(jù)具體條件查詢菜品,登錄后可進行預(yù)訂。</p><p> 購物車信息管理:用戶登錄后可以對購物車中的菜品進行增加、修改、刪除。</p><p> 訂單信息管理:用戶登錄后可以查看已付款的訂單,未完成的訂單。</p><p> 留言板信息管理:用戶可以進行留言,并且管理員能夠針對留言進行
72、相應(yīng)的回答。</p><p> 幫助信息:為用戶提供系統(tǒng)基本信息、用戶注意事項及版權(quán)信息。</p><p> 權(quán)限維護:用戶登錄后可以對已有用戶的密碼進行修改。</p><p><b> ?、?后臺功能</b></p><p> 用戶管理:可以實現(xiàn)用戶的查看、添加、刪除操作。</p><p>
73、; 菜品管理:實現(xiàn)菜品的修改、添加和刪除等操作。</p><p> 菜品類型管理:可以對菜品類型進行修改、添加和刪除等操作。</p><p> 訂單管理:可以對訂單進行處理。</p><p> 管理員管理:可以實現(xiàn)管理員的添加刪除以及修改密碼。</p><p> 3.2.2 數(shù)據(jù)庫需求分析</p><p>
74、 在線訂餐系統(tǒng)是一個典型的電子商務(wù)類型系統(tǒng),根據(jù)上面的系統(tǒng)需求和功能分析,數(shù)據(jù)庫中需要有以下信息。</p><p> 用戶信息,包括用戶名、密碼、姓名、年齡等信息。</p><p> 菜品信息,包括菜品名、所屬類別、價格等信息。</p><p> 購物車,包括用戶購買信息、菜品名、數(shù)量等。</p><p> 訂單,包括用戶名、用餐時間
75、、訂餐人姓名、聯(lián)系方式等信息。</p><p> 3.2.3 數(shù)據(jù)流圖</p><p> 在詳細(xì)的調(diào)研與分析一般餐廳經(jīng)營活動過程的基礎(chǔ)上,得到分析設(shè)計得出了一下各級數(shù)據(jù)流圖。</p><p> ?、?系統(tǒng)前臺(用戶)的基本數(shù)據(jù)流圖,如圖3.1所示:</p><p> 用戶的基本信息、所使用購物車信息、相關(guān)的訂單信息、留言注意事項數(shù)據(jù)分別
76、經(jīng)過用戶信息管理、購物車管理、訂單管理、留言管理的處理過程后,對應(yīng)的數(shù)據(jù)流就分別存儲到用戶信息表、購物車表、訂單表、留言表中,同時可從對應(yīng)表中將具體信息顯示供用戶查看。</p><p> 圖3.1 在線訂餐系統(tǒng)前臺數(shù)據(jù)流圖</p><p> ?、?系統(tǒng)后臺(管理員)的基本數(shù)據(jù)流圖,如圖3.2所示:</p><p> 管理員對于所管理的用戶的基本信息、菜品的基本信
77、息、相關(guān)的訂單信息、留言、管理員信息數(shù)據(jù)分別經(jīng)過用戶管理、菜品管理、訂單管理、留言管理、管理員管理的處理過程后,對應(yīng)的數(shù)據(jù)流就分別存儲到用戶信息表、菜品信息表、訂單表、留言表、管理員表中,同時可從對應(yīng)表中將具體信息顯示供管理員查看。</p><p> 圖3.2 在線訂餐系統(tǒng)后臺數(shù)據(jù)流圖</p><p> ?、?用戶訂餐的數(shù)據(jù)流圖是整個系統(tǒng)數(shù)據(jù)流圖最重要的部分,在線訂餐系統(tǒng)數(shù)據(jù)流圖如圖3.
78、3所示:</p><p> 圖3.3 在線訂餐系統(tǒng)訂餐數(shù)據(jù)流圖</p><p> 3.2.4 數(shù)據(jù)字典</p><p> 數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合。數(shù)據(jù)字典通常包括數(shù)據(jù)存儲、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)項數(shù)據(jù)流、和處理過程5個部分。除此之外,數(shù)據(jù)字典中還包含了一些其他信息如:定義(數(shù)據(jù)類型、長度、結(jié)構(gòu)等),一般信息(名字、別名、描述等),使用特點,控制信息和分組信息等
79、。數(shù)據(jù)字典主要被人們用于查閱不明白的條目的解釋[3]。</p><p> 因為在線訂餐系統(tǒng)是一個小型軟件系統(tǒng),所以采用卡片形式書寫數(shù)據(jù)字典,每張卡片上保存描述一個數(shù)據(jù)的信息。每張卡片上包含了主要包含了編號、名字、描述這樣一些信息。以下面數(shù)據(jù)字典的卡片來舉例說明。</p><p><b> ⑴ 數(shù)據(jù)結(jié)構(gòu)</b></p><p> 下面以“菜
80、品信息”為例。</p><p><b> ·名字:菜品信息;</b></p><p> ·別名:d_Food;</p><p> ·描述:在線訂餐系統(tǒng)的菜品信息;</p><p> ·定義:菜品信息=菜品編號+菜品類型編號+菜品名稱+菜品單價+菜品介紹+菜品圖片地址;<
81、;/p><p> ·位置:保存到菜品信息表中。</p><p><b> ?、?數(shù)據(jù)項</b></p><p> 以數(shù)據(jù)結(jié)構(gòu)“菜品信息”的數(shù)據(jù)項“菜品編號”為例。</p><p><b> ·名字:菜品編號;</b></p><p> ·別名
82、:foodID;</p><p> ·描述:唯一標(biāo)識某菜品入庫的數(shù)字編號;</p><p><b> ·定義:整型數(shù);</b></p><p> ·位置:在菜品信息,購物車中。</p><p><b> ?、?數(shù)據(jù)流</b></p><p>
83、; 以數(shù)據(jù)結(jié)構(gòu)“菜品信息”在系統(tǒng)內(nèi)的流動為例。 </p><p> ·數(shù)據(jù)流名:菜品信息數(shù)據(jù)流;</p><p> ·數(shù)據(jù)流來源:管理員錄入處理;</p><p> ·數(shù)據(jù)流去向:菜品信息表;</p><p><b> ·平均流量:不定;</b></p>
84、<p> ·說明:“菜品信息”數(shù)據(jù)結(jié)構(gòu)在系統(tǒng)內(nèi)的流向;</p><p> ·高峰期流量:不定。</p><p><b> ?、?數(shù)據(jù)存儲</b></p><p> 以數(shù)據(jù)結(jié)構(gòu)“菜品信息”在系統(tǒng)內(nèi)的存儲為例。</p><p> ·數(shù)據(jù)存儲名:菜品信息表;</p>
85、;<p> ·說明:管理員添加菜品信息及管理員審核信息;</p><p> ·編號:菜品信息的唯一標(biāo)識,從1開始每次自增1;</p><p> ·輸入的數(shù)據(jù)流:管理員添加菜品信息;</p><p> ·輸出的數(shù)據(jù)流:管理員審核的信息;</p><p> ·數(shù)據(jù)結(jié)構(gòu):菜品
86、信息;</p><p><b> ·數(shù)據(jù)量:不定;</b></p><p><b> ·存取頻率:不定;</b></p><p> ·存取方法:順序查詢與隨機查詢、查詢與更新、聯(lián)機處理等。</p><p><b> ?、?處理過程</b>&l
87、t;/p><p> 以“菜品信息”為例。</p><p> ·處理過程名:菜品信息;</p><p> ·說明:管理員添加菜品信息;</p><p> ·輸入:菜品編號、菜品類型編號、菜品名稱、菜品單價、菜品介紹、菜品圖片地址;</p><p> ·輸出:保存到菜品信息表中
88、;</p><p> ·處理:對菜品進行唯一性驗證。</p><p> 數(shù)據(jù)字典的基本表示方法如上面的例子,它只是起到了引導(dǎo)的作用。完善的數(shù)據(jù)字典應(yīng)根據(jù)系統(tǒng)實際的需求分析,在充分研究、分析、討論的基礎(chǔ)上建立,并且在將來設(shè)計數(shù)據(jù)庫的過程中不斷完善、充實、修改。</p><p><b> 3.3 流程圖</b></p>
89、<p> 用戶首先進入的是在線訂餐系統(tǒng)的首頁,在首頁用戶可以查看餐廳介紹、菜單查詢、社區(qū)家園。對于未注冊用戶可以先進行注冊,注冊過的用戶則可以直接登錄進入系統(tǒng)。登錄后用戶可以查看之前購物車、訂單、用戶信息,也可以進行菜品的預(yù)訂完成相應(yīng)的操作, </p><p> 網(wǎng)上訂餐系統(tǒng)運行時一般按照圖3.4所示的操作流程進行操作。</p><p> 圖3.4 在線訂餐系統(tǒng)流程示意圖
90、</p><p><b> 3.4 本章小節(jié)</b></p><p> 本章講述了系統(tǒng)的可行性研究及需求分析??尚行苑治鲞M一步探討問題定義階段所確定的問題是否有可行的解,具體分析了在線訂餐系統(tǒng)的實際可行性。需求分析這具體的描述了本系統(tǒng)的要求。。</p><p> 4 在線訂餐系統(tǒng)總體設(shè)計</p><p> 總體設(shè)
91、計階段的核心問題是:怎樣實現(xiàn)系統(tǒng)?通常分為系統(tǒng)設(shè)計、結(jié)構(gòu)設(shè)計兩個階段。前者確定系統(tǒng)的具體方案;后者確定軟件結(jié)構(gòu)[6]。</p><p><b> 4.1 系統(tǒng)模塊圖</b></p><p> 4.1.1前臺功能模塊</p><p> 根據(jù)在線訂餐系統(tǒng)的特點,可以將其分成前臺模塊、后臺模塊兩個部分。前臺的設(shè)計主要用于用戶瀏覽、查找菜品信息、
92、預(yù)訂菜品、用戶留言等;而后臺的設(shè)計主要針對的是管理員對于菜品信息、用戶信息和其他信息的管理。如圖4.1所示為在線訂餐系統(tǒng)的前臺功能模塊圖。</p><p> 圖4.1 在線訂餐系統(tǒng)前臺功能模塊圖</p><p><b> ?、?登錄模塊</b></p><p> 當(dāng)用戶進入在線訂餐系統(tǒng)首頁時,可點擊注冊進入到用戶注冊模塊,進行相應(yīng)信息的填寫
93、,注冊成功后可以進行登錄。若已經(jīng)注冊者可直接登錄,但忘記密碼時,可點擊忘記密碼鏈接到獲取密碼。</p><p><b> ?、?預(yù)訂模塊</b></p><p> 用戶可以根據(jù)菜品的種類、價格、名稱進行相應(yīng)的查詢。如果需要預(yù)定,那必須先登錄。登錄后可以點擊預(yù)訂進入到購物車模塊。</p><p><b> ⑶ 購物車模塊</b
94、></p><p> 當(dāng)用戶登錄后,也可以直接進入購物車查看之前訂購的商品,修改商品數(shù)量,刪除商品。可清空購物車,或點擊繼續(xù)購物返回菜品預(yù)訂。確認(rèn)購物車中菜品信息后,點擊結(jié)算后填寫訂餐人信息,填寫完后再次確認(rèn)菜品信息,若菜品有所錯可以點擊返回進行修改,若確定者提交訂單,最后進行支付。</p><p><b> ?、?我的訂單模塊</b></p>
95、<p> 當(dāng)用戶登錄后,用戶可以按照訂單狀態(tài)來選擇查看訂單,具體分為未完成訂單和已完成訂單。進入后還可根據(jù)日期、姓名等進行具體查詢。用戶還可以查看自己的個人資料,也可修改相應(yīng)的信息。</p><p><b> ?、?社區(qū)家園模塊</b></p><p> 用戶未登錄時可以,查看留言和注意事項。如果用戶想進行留言,那必須先登錄。</p>&l
96、t;p> 4.1.2 后臺功能模塊</p><p> 在線訂餐系統(tǒng)的后臺功能模塊圖如圖4.2所示。</p><p> 圖4.2 在線訂餐系統(tǒng)后臺功能模塊圖</p><p> ?、?用戶管理模塊 </p><p> 管理員登錄后,僅僅只可以對用戶的信息可以進行查詢,并不能隨意修改用戶的信息。對于極端用戶可以進行刪除。</p
97、><p><b> ?、?菜品管理模塊</b></p><p> 管理員能夠查看所有的菜品,并能修改、刪除菜品信息,也可以修改菜品類型,增加菜品等。</p><p><b> ⑶ 訂單管理模塊</b></p><p> 在對訂單進行管理時,可以根據(jù)日期區(qū)間對訂單進行查詢,進行相應(yīng)的增刪改操作。&l
98、t;/p><p><b> ?、?管理員信息模塊</b></p><p> 只有超級管理員能夠?qū)芾韱T進行查詢、增加、刪除、更改操作。</p><p><b> 4.2 數(shù)據(jù)庫設(shè)計</b></p><p> 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計的的好壞將直接對整個在線訂餐系統(tǒng)的效率和實現(xiàn)效果有很大的影響,因此數(shù)據(jù)庫在整
99、個系統(tǒng)中占有著十分重要的地位。合理的數(shù)據(jù)庫結(jié)構(gòu)設(shè)計可以很好的提高數(shù)據(jù)存儲的效率。不但如此,數(shù)據(jù)庫結(jié)構(gòu)是否將直接影響系統(tǒng)的實現(xiàn)[7]。</p><p> 4.2.1 數(shù)據(jù)庫概念設(shè)計(E-R圖)</p><p> E-R模型的“聯(lián)系”用于刻畫實體之間的關(guān)聯(lián)。一種完整的方式是對局部結(jié)構(gòu)中任意兩個實體類型,依據(jù)需求分析的結(jié)果,考察局部結(jié)構(gòu)中任意兩個實體類型之間是否存在聯(lián)系。如果存在聯(lián)系,進一步
100、確定是1:1,1:N,還是M:N等。還要考察一個實體類型內(nèi)部是否存在聯(lián)系,兩個實體類型之間是否存在聯(lián)系,多個實體類型之間是否存在聯(lián)系等。</p><p> 根據(jù)上面的分析,得出系統(tǒng)所要處理的實體及其聯(lián)系,在確定實體及其聯(lián)系的主要屬性后,結(jié)合系統(tǒng)的功能處理要求后,在分析設(shè)計出的數(shù)據(jù)流程圖的基礎(chǔ)上,能得出系統(tǒng)要處理的實體及其聯(lián)系,在確定實體及其聯(lián)系的主要屬性后,結(jié)合系統(tǒng)的功能處理要求后,得出E-R圖,具體如下:&l
101、t;/p><p> ?、?關(guān)于管理員實體、留言實體、管理員類型實體,如圖4.3所示。</p><p> 由圖可知,一個管理員可以回復(fù)多條留言,一條留言由一個管理員回復(fù),所以管理員與留言是一對多的關(guān)系;一個管理員只屬于一個管理員類型,而一個管理員類型可以對應(yīng)多名管理員,所以管理員與管理員類型是一對多的關(guān)系。</p><p> 圖4.3 公 告欄模塊圖</p>
102、;<p> 管理員實體的屬性包括:管理員編號編號、管理員姓名、管理員密碼、管理員類型編號;留言實體的屬性包括:信息編號、用戶姓名、信息內(nèi)容、信息發(fā)布時間、回復(fù)、回復(fù)時間;管理員類型實體的屬性包括:管理員類型編號管理員類型名稱。</p><p> ?、?關(guān)于公告欄實體,如圖4.4所示。</p><p> 公告實體的屬性包括:公告編號、發(fā)布時間日期、公告信息內(nèi)容。</p
103、><p> 圖4.4 公告欄模塊圖</p><p> ?、?關(guān)于用戶實體、菜品實體、購物車實體、訂單實體、留言實體、訂單類型實體、菜品類型實體,如圖4.5所示。</p><p> 由圖可知,一個用戶可以選擇多個菜品,多道菜屬于一個用戶所以用戶與菜品是一對多的關(guān)系;一個菜品只屬于一個菜品類型,而一個菜品類型可以對應(yīng)多道菜,所以菜品與菜品類型是一對多的關(guān)系;一個購物車中
104、可以加入多道菜,而多道菜加入一個購物車,所以購物車與菜品是一對多的關(guān)系;一個購物車中可以生成多條訂單,而多道訂單從一個購物車生成,所以購物車與菜品是一對多的關(guān)系;一個訂單只有一個種訂單類型,而一個訂單類型可以有多條訂單,所以訂單與訂單類型是一對多的關(guān)系;一個用戶可以留多條言,而一條留言只可能是一個客戶留的,所以用戶與留言是一對多的關(guān)系。</p><p> 用戶信息實體的屬性包括:用戶編號、用戶姓名、密碼、密碼提
105、示問題、答案、電話號碼、真實姓名、性別、年齡;菜品實體的屬性包括:菜品編號、菜品類型編號、菜品單價、菜品名稱、菜品介紹、菜品圖片地址;購物車實體的屬性包括:購物車編號、用戶編號、訂單編號、菜品編號、菜品數(shù)量、小計、加入購物車時間;訂單實體的屬性包括:訂單編號、用戶編號、用餐時間、加入訂單時間、訂餐人姓名、訂餐人電話、訂單類型編號;留言實體的屬性包括:信息編號、用戶姓名、信息內(nèi)容、信息發(fā)布時間、回復(fù)、回復(fù)時間;訂單類型實體的屬性包括:訂單
106、類型編號、訂單類型名稱;菜品類型實體的屬性包括:菜品類型編號、菜品類型名稱。</p><p> 圖4.5 系統(tǒng)基本E-R圖</p><p> 4.2.2 數(shù)據(jù)庫邏輯設(shè)計</p><p> 4.2.2.1 數(shù)據(jù)庫關(guān)系模式</p><p> 根據(jù)E-R圖轉(zhuǎn)換到關(guān)系模式的轉(zhuǎn)換規(guī)則(一對多的聯(lián)系均采用合并的規(guī)則),很容易的到如下的關(guān)系模式。(
107、說明:本系統(tǒng)關(guān)系模式有商榷和完善的余地,數(shù)據(jù)庫的屬性均是用英文表示,標(biāo)注下劃線的是各表的主碼),</p><p> ⑴ 菜品信息(菜品編號、菜品類型編號、菜品名稱、菜品單價、菜品介紹、菜品圖片地址、菜品數(shù)量、菜品推薦)</p><p> ⑵ 菜品類型(菜品類型編號、菜品類型名稱)</p><p> ?、?用戶信息(用戶編號、用戶姓名、密碼、真實姓名、電話號碼、性
108、別、年齡、密碼提示問題、答案)</p><p> ?、?購物車(購物車編號、用戶編號、訂單編號、菜品編號、菜品數(shù)量、小計、加入購物車時間)</p><p> ?、?訂單(訂單編號、用戶編號、用餐時間、訂餐人姓名、訂餐人電話、加入訂單時間、訂單類型編號)</p><p> ?、?訂單類型(訂單類型編號、訂單類型名稱)</p><p> ?、?留
109、言板信息(信息編號、用戶編號、信息內(nèi)容、信息發(fā)布時間、回復(fù)、回復(fù)時間)</p><p> ?、?公告欄(公告欄信息編號、公告欄信息編號、公告欄發(fā)布時間)</p><p> ⑼ 管理員信息(管理員編號、管理員姓名、管理員密碼、管理員類型編碼)</p><p> ?、?管理員類型(管理員類型編碼、管理員類型名稱)</p><p> 表名與屬性
110、名轉(zhuǎn)化為對相應(yīng)的英文,如下所示:</p><p> ?、?d_Food(FoodID、foodTypeID、foodName、foodPrice、foodINtroduction、foodImageUrl、foodShow)</p><p> ?、?d_FoodType(foodTypeID、foodTypeName)</p><p> ⑶ d_Memberuse
111、r(userID、membername 、password、customername、telephone、sex、age、sfznumber、question、answer)</p><p> ?、?d_Cart(cartID、userID、orderID、foodID、foodName、foodPrice、number、count、nowtime)</p><p> ⑸ d_Order
112、(orderID、userID、amount、ordertime、name、sfz、tel、nowtime、statusTypeID)</p><p> ?、?d_StatusType (statusTypeID、statusTypeName)</p><p> ?、?d_Message(messageID、userID、messageNote、messagetime、reply、repl
113、yTime)</p><p> ?、?d_New(newID、newtext、newTime)</p><p> ?、?d_Admin(adminID、adminname、pass、adminTypeID)</p><p> ?、?d_ AdminType(adminTypeID、adminTypeName)</p><p> 4.2.2.
114、2 數(shù)據(jù)庫及表結(jié)構(gòu)</p><p> 根據(jù)在數(shù)據(jù)庫概念設(shè)計中的E-R圖,設(shè)計數(shù)據(jù)表結(jié)構(gòu)。其中以下劃線標(biāo)出的為關(guān)系模式的主鍵(數(shù)據(jù)庫中的屬性均為)。以下是在線訂餐系統(tǒng)數(shù)據(jù)庫中各個表的設(shè)計:</p><p> ?、?用于記錄菜品信息的d_Food表,該表的設(shè)計結(jié)構(gòu)如表4-1所示。菜品信息(菜品編號、菜品類型編號、菜品名稱、菜品單價、菜品介紹、菜品圖片地址、菜品是否顯示)</p>
115、<p> 表4-1 菜品信息表</p><p> ?、?用于記錄菜品信息的d_FoodType表,該表的設(shè)計結(jié)構(gòu)如表4-2所示。菜品類型(菜品類型編號、菜品類型名稱);</p><p> 表4-2 菜品類型表</p><p> ?、?用于記錄用戶信息的d_Memberuser表,該表的設(shè)計結(jié)構(gòu)如表4-3所示。菜品類型(菜品類型編號、菜品類型名稱)用戶
116、信息(用戶編號、用戶姓名、密碼、真實姓名、電話號碼、性別、年齡、身份證號碼、密碼提示問題、答案);</p><p> 表4-3 用戶信息表</p><p> ?、?用于記錄購物車信息的d_Cart表,該表的設(shè)計結(jié)構(gòu)如表4-4所示。購物車(購物車編號、用戶編號、訂單編號、菜品編號、菜品名稱、菜品單價、菜品數(shù)量、小計、加入購物車時間)。</p><p> 表4-4
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于.net的在線訂餐系統(tǒng)設(shè)計與開發(fā)【帶程序】
- 基于.net的在線訂餐系統(tǒng)設(shè)計與開發(fā)【帶程序】
- 基于.NET的在線訂餐系統(tǒng)設(shè)計與開發(fā)論文.doc
- 基于.NET的在線訂餐系統(tǒng)設(shè)計與開發(fā)論文.doc
- 基于.net的在線考試系統(tǒng)設(shè)計論文[帶程序]
- 基于.NET的在線訂餐系統(tǒng)設(shè)計與開發(fā)開題報告.doc
- 基于.NET的在線訂餐系統(tǒng)設(shè)計與開發(fā)開題報告.doc
- 基于.net的航空訂票系統(tǒng)設(shè)計與開發(fā)論文[帶程序]
- 基于.net的在線考試系統(tǒng)設(shè)計【帶程序】
- 基于.net的在線考試系統(tǒng)設(shè)計【帶程序】
- 基于.net的航空訂票系統(tǒng)設(shè)計與開發(fā)【帶程序】
- 基于.net的航空訂票系統(tǒng)設(shè)計與開發(fā)【帶程序】
- 基于.net的網(wǎng)上訂餐系統(tǒng)的開發(fā)與實現(xiàn)
- 基于.net的在線考試系統(tǒng)的設(shè)計與開發(fā)
- 基于.net的網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)論文---基于.net的在線商城系統(tǒng)的設(shè)計與開發(fā)
- 基于asp.net的畢業(yè)設(shè)計(論文)管理系統(tǒng)【 帶程序】
- 基于vb.net的房屋租賃管理系統(tǒng)設(shè)計論文[帶程序]
- 基于asp.net的網(wǎng)上訂餐系統(tǒng)設(shè)計與實現(xiàn)
- 基于.net的網(wǎng)上訂餐管理系統(tǒng)的設(shè)計與實現(xiàn)
評論
0/150
提交評論