電子點餐系統(tǒng)——服務(wù)器端的設(shè)計與實現(xiàn)_第1頁
已閱讀1頁,還剩43頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  本科畢業(yè)設(shè)計說明書</b></p><p>  題 目:電子點餐系統(tǒng)——</p><p>  服務(wù)器端的設(shè)計與實現(xiàn)</p><p>  院 (部):計算機科學(xué)與技術(shù)學(xué)院</p><p>  專 業(yè): 軟件工程</p><p>  班 級: 軟件123

2、</p><p>  姓 名: 俞延峰</p><p>  學(xué) 號: 20121112125</p><p><b>  指導(dǎo)教師: 伊靜</b></p><p>  完成日期: 2016年6月30日</p><p>  目 錄(目錄頁碼格式不對,尤其是頁碼)</p>

3、<p><b>  摘 要Ⅵ</b></p><p>  ABSTRACTⅦ</p><p>  1前 言- 1 -</p><p>  1.1 選題背景- 1 -</p><p>  1.2 系統(tǒng)簡要說明- 1 -</p><p>  1.3 開發(fā)技術(shù)介紹- 1 -<

4、/p><p>  1.3.1 MVC設(shè)計模式介紹- 2 -</p><p>  1.3.2 Struts框架簡介- 3 -</p><p>  1.3.3 Hibernate對象關(guān)系映射框架簡介- 3 -</p><p>  1.3.4 Spring框架簡介- 3 -</p><p>  2 需求分析- 4 -&

5、lt;/p><p>  2.1 系統(tǒng)設(shè)計目標(biāo)- 4 -</p><p>  2.2 可行性分析- 4 -</p><p>  2.3 系統(tǒng)特點- 4 -</p><p>  2.4 系統(tǒng)功能- 5 -</p><p>  2.5 系統(tǒng)環(huán)境- 5 -</p><p>  2.5.1

6、系統(tǒng)運行環(huán)境- 5 -</p><p>  2.5.1 系統(tǒng)開發(fā)環(huán)境- 5 -</p><p>  3 概要設(shè)計- 6 -</p><p>  3.1 系統(tǒng)功能結(jié)構(gòu)- 7 -</p><p>  3.2 系統(tǒng)功能描述- 7 -</p><p>  3.2.1 消費者模塊- 7 -</p>&l

7、t;p>  3.2.1 點菜員模塊- 7 -</p><p>  3.3 數(shù)據(jù)設(shè)計- 8 -</p><p>  3.3.1數(shù)據(jù)庫需求分析- 8 -</p><p>  3.3.2 E-R圖- 8 -</p><p>  3.3.3 數(shù)據(jù)庫物理設(shè)計- 9 -</p><p>  4 詳細(xì)設(shè)計與系統(tǒng)的實現(xiàn)

8、- 11 -</p><p>  4.1 系統(tǒng)類和包的組織介紹- 12 -</p><p>  4.2 架構(gòu)的實現(xiàn)- 12 -</p><p>  4.2.1 表示層的實現(xiàn)- 12 -</p><p>  4.2.2 業(yè)務(wù)邏輯層的實現(xiàn)- 17 -</p><p>  4.2.3 數(shù)據(jù)持久層的實現(xiàn)- 18 -

9、</p><p>  4.3 功能模塊的實現(xiàn)- 18 -</p><p>  4.3.1消費者模塊的實現(xiàn)- 18 -</p><p>  4.3.2點菜員模塊的實現(xiàn)- 22 -</p><p>  4.3.3后廚模塊的實現(xiàn)- 24 -</p><p>  4.3.4經(jīng)理模塊的實現(xiàn)- 27 -</p>

10、;<p>  5系統(tǒng)測試- 32 -</p><p>  5.1測試主要功能點- 34 -</p><p>  5.2測試準(zhǔn)備工作- 34 -</p><p>  5.3測試結(jié)果- 35 -</p><p>  5.4驗收測試- 35 -</p><p>  6 結(jié)論- 36 -</p&

11、gt;<p>  謝 辭- 37 -</p><p>  參考文獻- 38 -</p><p><b>  摘 要</b></p><p> ?。t色為增加的文字)</p><p>  “電子點餐系統(tǒng)—服務(wù)器端功能的設(shè)計與實現(xiàn)”的設(shè)計目的是為了實現(xiàn)餐館點菜工作信息化,高效為顧客服務(wù)的重要工作之一。系統(tǒng)結(jié)

12、合點菜工作的特點,利用網(wǎng)絡(luò)的有效傳播性,提高點菜工作效率、節(jié)省點菜時間,盡快生成點菜單,為各位前來消費的顧客提供及時而豐富的菜譜信息,幫助顧客選擇美味并且豐盛的佳肴。</p><p>  本文關(guān)于“電子點餐系統(tǒng)”進行了說明,系統(tǒng)基于MVC開發(fā)模式,總共分為三層:業(yè)務(wù)層、數(shù)據(jù)層、表現(xiàn)層。業(yè)務(wù)層負(fù)責(zé)業(yè)務(wù)邏輯的處理,數(shù)據(jù)層負(fù)責(zé)與數(shù)據(jù)庫后臺交互,表現(xiàn)層負(fù)責(zé)前臺界面的展示。運用了struts+spring+hibernat

13、e的集成框架,其中使用Struts作為系統(tǒng)的整體基礎(chǔ)架構(gòu),負(fù)責(zé)MVC的分離,在Struts框架的模型部分,控制業(yè)務(wù)跳轉(zhuǎn),利用Hibernate框架對持久層提供支持,Spring做管理,管理struts和hibernate。第二段需要重新寫,系統(tǒng)實現(xiàn)了什么功能,用什么技術(shù)實現(xiàn)的,達到了什么效果。</p><p>  關(guān)鍵詞:電子點餐系統(tǒng);MVC;Struts;Spring;Hibernate</p>

14、<p>  Electronic ordering system - Design and implementation of server</p><p><b>  ABSTRACT</b></p><p>  "Electronic ordering system" is designed to work in order to a

15、chieve a la carte restaurant information, one of the important work and efficient customer service. Combining the characteristics of a la carte system work, the use of effective dissemination of the network, a la carte i

16、mprove efficiency and save time ordering, generating carte menu as soon as possible for you to come and spend customers to provide timely information and rich recipes, to help customers choose delicious and hearty cuis&l

17、t;/p><p>  Key Words: Electronic ordering system;MVC;struts+spring+hibernate</p><p><b>  1前 言</b></p><p><b>  1.1 選題背景</b></p><p>  在這個科技高速發(fā)展的時代,科技

18、改變了很多傳統(tǒng)行業(yè)的運營模式。當(dāng)然,餐飲業(yè)也不例外,通常情況下,餐廳點餐、送單、結(jié)賬都采用人工傳遞,這種工作流程效率低下,而且在就餐高峰期,服務(wù)員在快速手寫菜單、人工送單中可能還會增加誤操作,造成客人投訴,影響到服務(wù)質(zhì)量,甚至有損餐廳的聲譽。在這個“民以食為天”的社會中,遠遠不能滿足廣大消費者的飲食需求。基于以上問題,本人開發(fā)了一個“電子點餐系統(tǒng)”,該系統(tǒng)能夠縮短點餐、下單的時間,提高餐廳的用餐效率;最大限度的降低了點才下單過程中的出錯

19、率;增加消費者的滿意程度;美觀簡潔的界面方便消費者的使用,強大的功能滿足了商家的基本需求。它可以取代傳統(tǒng)的手工方式,工作效率得到了顯著提高。 </p><p>  1.2 系統(tǒng)簡要說明</p><p>  “電子點餐系統(tǒng)”的設(shè)計目的是為了實現(xiàn)餐館點菜工作信息化,高效為顧客服務(wù)的重要工作之一。系統(tǒng)結(jié)合點菜工作的特點,利用網(wǎng)絡(luò)的有效傳播性,提高點菜工作效

20、率、節(jié)省點菜時間,盡快生成點菜單,為各位前來消費的顧客提供及時而豐富的菜譜信息,幫助顧客選擇美味并且豐盛的佳肴。消費者是該系統(tǒng)的重要組成部分,該業(yè)務(wù)模塊的主要功能包括:</p><p><b>  消費者點餐</b></p><p><b>  消費者下單</b></p><p><b>  消費者評價</

21、b></p><p>  修改個人信息以及刪除訂單</p><p>  1.3 開發(fā)技術(shù)介紹</p><p>  “電子點餐系統(tǒng)”,通過消費者以及點菜員的智能點餐,提高了效率,采用基于MVC開發(fā)模式,采用SSH架構(gòu)編寫的一套點餐系統(tǒng)。</p><p>  1.3.1 MVC設(shè)計模式介紹(與大家重合率太高)</p><

22、p>  MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟件設(shè)計典范,用一種業(yè)務(wù)邏輯、數(shù)據(jù)、界面 顯示分離的方法組織代碼,將業(yè)務(wù)邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業(yè)務(wù)邏輯。MVC被獨特的發(fā)展起來用于映射傳統(tǒng)的輸入、處理和輸出功能在一個邏輯的圖形化用戶界面的結(jié)構(gòu)中。</p><p&

23、gt;  模型-視圖-控制器(MVC)是Xerox PARC在二十世紀(jì)八十年代為編程語言Smalltalk-80發(fā)明的一種軟件設(shè)計模式,已被廣泛使用。后來被推薦為Oracle旗下Sun公司Java EE平臺的設(shè)計模式,并且受到越來越多的使用ColdFusion和PHP的開發(fā)者的歡迎。</p><p>  MVC是一個框架模式,它強制性的使應(yīng)用程序的輸入、處理和輸出分開。使MVC應(yīng)用程序被分成三個核心部件:模型、視

24、圖、控制器。它們各自處理自己的任務(wù)。最典型的MVC就是JSP + servlet + javabean的模式。</p><p>  總結(jié)一下MVC處理過程,首先控制器用來接收用戶的請求,來決定調(diào)用那個模型來處理,然后模型用業(yè)務(wù)邏輯來處理用戶的請求并返回數(shù)據(jù),最后控制器用相應(yīng)的視圖格式化模型返回數(shù)據(jù),并通過表示層呈現(xiàn)給用戶。</p><p>  mvc中的模型、視圖和控制器如圖1-1所示。&

25、lt;/p><p>  圖1-1 mvc模型</p><p>  1.3.2 Struts框架簡介</p><p>  Struts是最早的java開源框架之一,它是MVC設(shè)計模式的一個優(yōu)秀實現(xiàn)。 Struts定義了通用的Controller(控制器),通過配置文件(通常是 Struts -config.xml)隔離Model(模型)和View(視圖),以Action的

26、概念以對用戶請求進行了封裝,使代碼更加清晰易讀。 Struts還提供了自動將請求的數(shù)據(jù)填充到對象中以及頁面標(biāo)簽等簡化編碼的工具。 Struts能夠開發(fā)大型Java Web項目。</p><p>  1.3.3 Hibernate對象關(guān)系映射框架簡介</p><p>  Hibernate是一個開放源代碼的對象關(guān)系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所

27、欲的使用對象編程思維來 操縱數(shù)據(jù)庫。 Hibernate可以應(yīng)用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命 意義的是,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。</p><p>  1.3.4 Spring框架簡介</p><p>  Spring是一個開源框架,Sprin

28、g是于2003 年興起的一個輕量級的Java 開發(fā)框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中闡述的部分理念和原型衍生而來。它是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的??蚣艿闹饕獌?yōu)勢之一就是其分層架構(gòu),分層架構(gòu)允許使用者選擇使用哪一個組件,同時為 J2EE應(yīng)用程序開發(fā)提供集成的框架。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事

29、情。然而,Spring的用途不僅限于服務(wù)器端的開發(fā)。從簡單性、可測試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。Spring的核心是控制反轉(zhuǎn)(IoC)和面向切面(AOP)。簡單來說,Spring是一個分層的JavaSE/EEfull-stack(一站式) 輕量級開源框架。</p><p><b>  2 需求分析</b></p><p>  2.

30、1 系統(tǒng)設(shè)計目標(biāo)</p><p>  根據(jù)該系統(tǒng)的實際情況和特點,采用了jsp作為開發(fā)方式,采用了mysql數(shù)據(jù)庫,采用mvc模式,SSH框架的電子點餐系統(tǒng)才得以設(shè)計與實現(xiàn)。最終實現(xiàn)了包含消費者點餐,點菜員幫助點餐,廚師操作菜品等功能。</p><p>  2.2 可行性分析</p><p>  可行性分析是通過對項目的主要內(nèi)容和配套條件,如市場需求、資源供應(yīng)、建

31、設(shè)規(guī)模、工藝路線、設(shè)備選型、環(huán)境影響、資金籌措、盈利能力等,從技術(shù)、經(jīng)濟、工 程等方面進行調(diào)查研究和分析比較,并對項目建成以后可能取得的財務(wù)、經(jīng)濟效益及社會環(huán)境影響進行預(yù)測,從而提出該項目是否值得投資和如何進行建設(shè)的咨詢意 見,為項目決策提供依據(jù)的一種綜合性的系統(tǒng)分析方法??尚行苑治鰬?yīng)具有預(yù)見性、公正性、可靠性、科學(xué)性的特點</p><p>  軟件可行性分析最根本的是:如果問題不值得解,分析員應(yīng)該建議,以避免時

32、間、資源、人力和金錢的浪費;如果問題值得解,分析員應(yīng)該一個,并且為工程制定一個初步的計劃。軟件可行性分析包括以下八個步驟</p><p>  1. 復(fù)查系統(tǒng)規(guī)模和目標(biāo)</p><p>  2. 研究目前正在使用的系統(tǒng)</p><p>  3. 導(dǎo)出新系統(tǒng)的高層邏輯模型</p><p><b>  4. 重新定義問題</b>

33、;</p><p>  5. 導(dǎo)出和評價供選擇的解法</p><p><b>  6. 推薦行動方針</b></p><p><b>  7. 草擬開發(fā)計劃</b></p><p>  8. 書寫文檔提交審查</p><p><b>  2.3 系統(tǒng)特點</

34、b></p><p>  電子點菜系統(tǒng)主要實現(xiàn)對消費者點餐下單的管理,最終實現(xiàn)集點餐下單、確認(rèn)訂單、制作訂單、完成訂單等一列功能于一體的簡潔的營銷模式。</p><p>  根據(jù)以上所提及的功能,系統(tǒng)應(yīng)該具有以下幾項重要特點:</p><p>  美觀的界面,給消費者提供視覺的吸引。</p><p>  合理易懂的功能劃分,方便消費者了

35、解和使用本系統(tǒng),提高效率。</p><p>  方便的數(shù)據(jù)查詢功能,可以實時對菜品菜單的更新作出調(diào)整</p><p>  保證系統(tǒng)數(shù)據(jù)的可靠性和運行的穩(wěn)定性</p><p><b>  2.4 系統(tǒng)功能</b></p><p>  提供經(jīng)理管理功能,方便對菜品、點菜員以及后廚進行增刪改查等操作。</p>

36、<p>  支持點菜功能,跟蹤消費者下單情況,做實時地調(diào)整</p><p><b>  2.5 系統(tǒng)環(huán)境</b></p><p>  2.5.1 系統(tǒng)運行環(huán)境</p><p>  電子點餐系統(tǒng)運用SSH框架,基于MVC模式設(shè)計開發(fā)。整個系統(tǒng)具備可重用、跨平臺、易于維護等特點。</p><p><b>

37、;  服務(wù)器端</b></p><p>  處理器:Intel酷睿i5 3210MCPU 或更高</p><p>  內(nèi)存:DDR3 4GB或以上</p><p>  操作系統(tǒng):Windows系列PC機</p><p>  應(yīng)用服務(wù)器:Apache tomcat</p><p>  Java運行環(huán)境:JDK

38、1.6</p><p><b>  數(shù)據(jù)庫:MySql</b></p><p><b> ?。?)客戶端</b></p><p>  處理器:Inter Pentium 4 1.6 GHz或更高</p><p>  內(nèi)存:256MB或以上</p><p>  瀏覽器:各種瀏覽

39、器均可,建議分辨率為1024×768像素</p><p>  2.5.1 系統(tǒng)開發(fā)環(huán)境</p><p>  由于開發(fā)工具MyEclipse對內(nèi)存要求較高,未保證其能正常運行及調(diào)試,內(nèi)存應(yīng)在512M以上。</p><p>  PC機:Intel酷睿i5 3210MCPU + DDR3</p><p>  操作系統(tǒng):Windows系列P

40、C機</p><p>  開發(fā)語言:java,jsp,ajax</p><p>  所用框架: Struts2 + Hibernate + Spring</p><p>  開發(fā)工具:Apache Tomcat 6.0 JDK 1.6.0</p><p>  IDE:Myeclipse8.5</p><p><b

41、>  3 概要設(shè)計</b></p><p>  3.1 系統(tǒng)功能結(jié)構(gòu)</p><p>  根據(jù)需求分析,電子點餐系統(tǒng)的功能結(jié)構(gòu)圖如圖3-1所示。主要包括消費者點餐、下單、評價,點菜員點餐、下單、確認(rèn)訂單,后廚修改菜品、確認(rèn)訂單以及經(jīng)理管理用戶和菜單、根據(jù)銷量調(diào)整菜品價格。</p><p>  圖 3-1 系統(tǒng)功能結(jié)構(gòu)圖</p><

42、;p>  3.2 系統(tǒng)功能描述</p><p>  根據(jù)需求,電子點餐系統(tǒng)設(shè)計了如圖3-1中所示的幾大功能,下面簡單介紹消費者和點菜員這兩大功能模塊:</p><p>  3.2.1 消費者模塊</p><p>  此模塊可以進行消費者點餐、下單、撤單、評價等功能,并且可以查看以及修改個人信息。如圖3-2所示。</p><p>  圖3

43、-2 消費者模塊</p><p>  3.2.1 點菜員模塊</p><p>  此模塊可以進行點菜員代替消費者點餐、下單、撤單、修改訂單狀態(tài)等功能,并且可以查看以及修改個人信息。如圖3-3所示。</p><p>  圖3-3 點菜員模塊功能圖</p><p><b>  3.3 數(shù)據(jù)設(shè)計</b></p>

44、<p>  3.3.1數(shù)據(jù)庫需求分析</p><p>  數(shù)據(jù)庫需求分析是了解和分析用戶的需求,是系統(tǒng)設(shè)計的基礎(chǔ),也是最困難,耗時最長的一部分。</p><p>  以實現(xiàn)基本功能為出發(fā)點,結(jié)合系統(tǒng)的功能進行需求分析,主要包括如下:</p><p>  用戶表,用來存放用戶基本信息</p><p>  訂單表,用來存放用戶的訂單的信

45、息</p><p>  菜單表,用來存放菜單的信息</p><p>  評價表,用來存放用戶評價的信息</p><p>  3.3.2 E-R圖(本部分,所有的圖的下面圖示,都要居中)</p><p>  主要表的主要屬性所對應(yīng)的E-R圖,如下圖所示:</p><p><b>  圖3-4 用戶表</b

46、></p><p><b>  圖3-5 訂單表</b></p><p><b>  圖3-6 菜單表</b></p><p><b>  圖3-7 評價表</b></p><p>  3.3.3 數(shù)據(jù)庫物理設(shè)計(本部分,所有的表都缺少表頭)</p><

47、;p>  根據(jù)概念設(shè)計,電子點餐系統(tǒng)的數(shù)據(jù)庫物理設(shè)計主要有以下幾個數(shù)據(jù)表:</p><p> ?。?)用戶表cfy_users,包含用戶名,密碼,姓名,性別,年齡,郵箱,用戶類型</p><p> ?。?)訂單表cfy_orders,包括訂單id,用戶名,訂單,金額,訂單狀態(tài)</p><p> ?。?)菜單表cfy_menu,包括菜單ID,菜單名,價格,類型&

48、lt;/p><p> ?。?)用戶評價表cfy_assess,包括評價ID,用戶名,評價內(nèi)容</p><p>  4 詳細(xì)設(shè)計與系統(tǒng)的實現(xiàn) </p><p>  4.1 系統(tǒng)類和包的組織介紹</p><p>  整個系統(tǒng)劃分為5個包,dao主要是后臺數(shù)據(jù)的增刪改查,domain是bean類以及其對應(yīng)的數(shù)據(jù)庫映射,service中間層處理web

49、層與dao層交互,web層負(fù)責(zé)與前臺頁面交互,page存放前臺jsp界面。</p><p>  4.2 架構(gòu)的實現(xiàn)(本部分的代碼需要重新排版,不要將所有的代碼都羅列,有重點的)</p><p>  4.2.1 表示層的實現(xiàn)</p><p>  表示層主由struts控制,Struts作為系統(tǒng)的整體基礎(chǔ)架構(gòu),負(fù)責(zé)MVC的分離,在Struts框架的模型部分,控制業(yè)務(wù)跳轉(zhuǎn)

50、。web.xml以及struts配置文件如下所示:</p><p><b>  web.xml</b></p><p>  <?xml version="1.0" encoding="UTF-8"?></p><p>  <web-app version="2.5"

51、</p><p>  xmlns="http://java.sun.com/xml/ns/javaee" </p><p>  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" </p><p>  xsi:schemaLocation="http://jav

52、a.sun.com/xml/ns/javaee </p><p>  http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"></p><p><b>  <filter></b></p><p>  <filter-name>struts2</filt

53、er-name></p><p>  <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></p><p><b>  </filter></b></p><p&g

54、t;  <filter-mapping></p><p>  <filter-name>struts2</filter-name></p><p>  <url-pattern>/*</url-pattern></p><p>  </filter-mapping></p><

55、;p>  <listener></p><p>  <listener-class>org.springframework.web.context.ContextLoaderListener</p><p>  </listener-class></p><p>  </listener></p>

56、<p>  <context-param></p><p>  <param-name>contextConfigLocation</param-name></p><p>  <param-value>classpath:beans.xml</param-value></p><p>  <

57、;/context-param></p><p>  <welcome-file-list></p><p>  <welcome-file>index.jsp</welcome-file></p><p>  </welcome-file-list></p><p>  </web

58、-app></p><p>  Struts.xml</p><p>  <?xml version="1.0" encoding="UTF-8"?></p><p>  <!DOCTYPE struts PUBLIC</p><p>  "-//Apache Soft

59、ware Foundation//DTD Struts Configuration 2.1.7//EN"</p><p>  "http://struts.apache.org/dtds/struts-2.1.7.dtd"></p><p><b>  <struts></b></p><p> 

60、 <!-- 配置action的訪問路徑為.do的形式 --></p><p>  <constant name="struts.action.extension" value="do"></constant></p><p>  <!-- 配置struts的開發(fā)模式 --></p><

61、;p>  <constant name="struts.devMode" value="true"></constant></p><p>  <!-- 配置struts的簡單模式 --></p><p>  <constant name="struts.ui.theme" valu

62、e="simple"></constant></p><p>  <package name="" namespace="/" extends="struts-default,json-default"></p><p>  <result-types></p&

63、gt;<p>  <result-type name="json" class="org.apache.struts2.json.JSONResult"/></p><p>  </result-types></p><p>  <interceptors></p><p> 

64、 <interceptor name="json" class="org.apache.struts2.json.JSONInterceptor"/></p><p>  </interceptors></p><p>  <action name="cfyLoginAction_*" class=&

65、quot;cn.cfy.web.action.CfyLoginAction" method="{1}" ></p><p>  <!-- 首頁登錄 --></p><p>  <result name="orderPage"></p><p>  /WEB-INF/page/menu/o

66、rderOnline.jsp</p><p><b>  </result></b></p><p>  <result name="dcyLogin"></p><p>  /WEB-INF/page/seller/dcyMain.jsp</p><p><b> 

67、 </result></b></p><p>  <result name="hcLogin"></p><p>  /WEB-INF/page/seller/hcMain.jsp</p><p><b>  </result></b></p><p>

68、  <result name="jlLogin"></p><p>  /WEB-INF/page/seller/jlMain.jsp</p><p><b>  </result></b></p><p>  <result name="userLogin"><

69、/p><p>  /WEB-INF/page/menu/userMain.jsp</p><p><b>  </result></b></p><p>  <result name="register"></p><p>  /WEB-INF/page/menu/register

70、.jsp</p><p><b>  </result></b></p><p>  <result name="home"></p><p>  /WEB-INF/page/menu/home.jsp</p><p><b>  </result><

71、;/b></p><p>  <result name="loginMain"></p><p>  /WEB-INF/page/menu/loginMain.jsp</p><p><b>  </result></b></p><p>  <result nam

72、e="experienceYaduo"></p><p>  /WEB-INF/page/menu/experienceYaduo.jsp</p><p><b>  </result></b></p><p>  <result name="myInfo"></p&g

73、t;<p>  /WEB-INF/page/menu/myInfo.jsp</p><p>  </result></p><p>  <result name="AssessUs"></p><p>  /WEB-INF/page/menu/AssessUs.jsp</p><p>

74、;  </result></p><p>  <result name="getAllPerson"></p><p>  /WEB-INF/page/seller/jlAllStaff.jsp</p><p><b>  </result></b></p><p&g

75、t;  <result name="addPerson"></p><p>  /WEB-INF/page/seller/addPerson.jsp</p><p>  </result></p><p>  <result name="jlUpdatePerson"></p>

76、<p>  /WEB-INF/page/seller/jlUpdatePerson.jsp</p><p><b>  </result></b></p><p>  <result name="userAssess"></p><p>  /WEB-INF/page/seller/us

77、erAssess.jsp</p><p><b>  </result></b></p><p>  <result name="getPerson" type="json"> <!-- 這里指定將被Struts2序列化的屬性,該屬性在action中必須有對應(yīng)的getter方法 --><

78、;/p><p>  <param name="root">list</param></p><p><b>  </result></b></p><p>  <result name="getUserAssess" type="json">

79、 <!-- 這里指定將被Struts2序列化的屬性,該屬性在action中必須有對應(yīng)的getter方法 --></p><p>  <param name="root">list</param></p><p><b>  </result></b></p><p><

80、b>  </action></b></p><p>  <action name="cfyRegisterAction_*" class="cn.cfy.web.action.CfyRegisterAction" method="{1}"></p><p>  <result nam

81、e="registerSuccess"></p><p>  /WEB-INF/page/menu/index.jsp</p><p><b>  </result></b></p><p>  <result name="loginMain"></p><

82、;p>  /WEB-INF/page/menu/loginMain.jsp</p><p><b>  </result></b></p><p>  </action></p><p>  <action name="cfyMenuAction_*" class="cn.cf

83、y.web.action.CfyMenuAction" method="{1}"></p><p>  <result name="meat"></p><p>  /WEB-INF/page/menu/meat.jsp</p><p><b>  </result></

84、b></p><p>  <result name="greens"></p><p>  /WEB-INF/page/menu/greens.jsp</p><p><b>  </result></b></p><p>  <result name="

85、seafood"></p><p>  /WEB-INF/page/menu/seafood.jsp</p><p><b>  </result></b></p><p>  <result name="discount"></p><p>  /WEB-IN

86、F/page/menu/discount.jsp</p><p><b>  </result></b></p><p>  <result name="feature"></p><p>  /WEB-INF/page/menu/feature.jsp</p><p><

87、;b>  </result></b></p><p>  <result name="childMenu"></p><p>  /WEB-INF/page/menu/childMenu.jsp</p><p>  </result></p><p>  <re

88、sult name="myMenu"></p><p>  /WEB-INF/page/menu/myMenu.jsp</p><p><b>  </result></b></p><p>  <result name="allOrders"></p><

89、;p>  /WEB-INF/page/seller/allOrders.jsp</p><p><b>  </result></b></p><p>  <result name="hcAllOrders"></p><p>  /WEB-INF/page/seller/hcAllOrders

90、.jsp</p><p><b>  </result></b></p><p>  <result name="getAllMenu"></p><p>  /WEB-INF/page/seller/allMenu.jsp</p><p><b>  </re

91、sult></b></p><p>  <result name="addMenu"></p><p>  /WEB-INF/page/seller/addMenu.jsp</p><p><b>  </result></b></p><p>  <r

92、esult name="hcUpdateMenu"></p><p>  /WEB-INF/page/seller/hcUpdateMenu.jsp</p><p><b>  </result></b></p><p>  <result name="hcSureOrders"&

93、gt;</p><p>  /WEB-INF/page/seller/hcSureOrders.jsp</p><p><b>  </result></b></p><p>  <result name="hcMakingOrders"></p><p>  /WEB-INF

94、/page/seller/hcMakingOrders.jsp</p><p><b>  </result></b></p><p>  <result name="ordersNum"></p><p>  /WEB-INF/page/seller/ordersNum.jsp</p>

95、<p><b>  </result></b></p><p>  <result name="getMeat" type="json"> <!-- 這里指定將被Struts2序列化的屬性,該屬性在action中必須有對應(yīng)的getter方法 --></p><p>  <p

96、aram name="root">list</param></p><p><b>  </result></b></p><p>  <result name="getGreens" type="json"> <!-- 這里指定將被Struts2序列化的屬性

97、,該屬性在action中必須有對應(yīng)的getter方法 --></p><p>  <param name="root">list</param></p><p><b>  </result></b></p><p>  <result name="getSeafoo

98、d" type="json"> <!-- 這里指定將被Struts2序列化的屬性,該屬性在action中必須有對應(yīng)的getter方法 --></p><p>  <param name="root">list</param></p><p><b>  </result>&l

99、t;/b></p><p>  <result name="getDiscount" type="json"> <!-- 這里指定將被Struts2序列化的屬性,該屬性在action中必須有對應(yīng)的getter方法 --></p><p>  <param name="root">list

100、</param></p><p><b>  </result></b></p><p>  <result name="getFeature" type="json"> <!-- 這里指定將被Struts2序列化的屬性,該屬性在action中必須有對應(yīng)的getter方法 -->

101、</p><p>  <param name="root">list</param></p><p><b>  </result></b></p><p>  <result name="getChildMenu" type="json"&g

102、t; <!-- 這里指定將被Struts2序列化的屬性,該屬性在action中必須有對應(yīng)的getter方法 --></p><p>  <param name="root">list</param></p><p><b>  </result></b></p><p>  

103、<result name="getMyMenu" type="json"> <!-- 這里指定將被Struts2序列化的屬性,該屬性在action中必須有對應(yīng)的getter方法 --></p><p>  <param name="root">list</param></p><p&g

104、t;<b>  </result></b></p><p>  <result name="getOrders" type="json"> <!-- 這里指定將被Struts2序列化的屬性,該屬性在action中必須有對應(yīng)的getter方法 --></p><p>  <param n

105、ame="root">list</param></p><p><b>  </result></b></p><p>  <result name="getMenu" type="json"> <!-- 這里指定將被Struts2序列化的屬性,該屬性在act

106、ion中必須有對應(yīng)的getter方法 --></p><p>  <param name="root">list</param></p><p><b>  </result></b></p><p>  <result name="getSureOrders&quo

107、t; type="json"> <!-- 這里指定將被Struts2序列化的屬性,該屬性在action中必須有對應(yīng)的getter方法 --></p><p>  <param name="root">list</param></p><p><b>  </result></b&

108、gt;</p><p>  <result name="getMakingOrders" type="json"></p><p>  <!-- 這里指定將被Struts2序列化的屬性,該屬性在action中必須有對應(yīng)的getter方法 --></p><p>  <param name=&quo

109、t;root">list</param></p><p><b>  </result></b></p><p>  </action></p><p>  </package></p><p><b>  </struts><

110、/b></p><p>  4.2.2 業(yè)務(wù)邏輯層的實現(xiàn)</p><p>  業(yè)務(wù)邏輯層主要是由Spring控制,Spring是一個輕量級的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架。Spring可以將簡單的組件配置、組合成為復(fù)雜的應(yīng)用。在Spring中,應(yīng)用對象被聲明式地組合,典型地是在一個XML文件里。Spring也提供了很多基礎(chǔ)功能(事務(wù)管理、持久化框架集成等等),將應(yīng)用

111、邏輯的開發(fā)留給了你。Spring配置文件如下:</p><p>  <?xml version="1.0" encoding="UTF-8"?></p><p>  <beans xmlns="http://www.springframework.org/schema/beans"</p><

112、;p>  xmlns:context="http://www.springframework.org/schema/context"</p><p>  xmlns:aop="http://www.springframework.org/schema/aop"</p><p>  xmlns:tx="http://www.spring

113、framework.org/schema/tx"</p><p>  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"</p><p>  xsi:schemaLocation="http://www.springframework.org/schema/beans

114、 http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context

115、-2.5.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd http://www.springframework.org/sc</p><p

116、>  <!-- 1.配置注解的自動掃描范圍 --></p><p>  <context:component-scan base-package="cn.cfy"></context:component-scan></p><p>  <!-- 2.配置數(shù)據(jù)源 --></p><p>  &l

117、t;!-- 3.創(chuàng)建sessionFactory,這是spring整合hibernate的入口 --></p><p>  <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"></p><p>  &

118、lt;property name="configLocation"></p><p>  <value>classpath:hibernate.cfg.xml</value></p><p>  </property></p><p><b>  </bean></b>

119、</p><p>  <!-- 4.創(chuàng)建事務(wù)管理器 --></p><p>  <bean id="txManage" class="org.springframework.orm.hibernate3.HibernateTransactionManager"></p><p>  <proper

120、ty name="sessionFactory" ref="sessionFactory"></property></p><p><b>  </bean></b></p><p>  <!-- 5.以注解的形式管理事務(wù) --></p><p>  <t

121、x:annotation-driven transaction-manager="txManage"/></p><p><b>  </beans></b></p><p>  4.2.3 數(shù)據(jù)持久層的實現(xiàn)</p><p>  數(shù)據(jù)持久層由hibernate控制。通過hibernate調(diào)用數(shù)據(jù)庫實現(xiàn)數(shù)據(jù)的

122、增刪改查,供Service層調(diào)用。hibernate配置文件如下:</p><p>  <?xml version="1.0" encoding="UTF-8"?></p><p>  <!DOCTYPE hibernate-configuration PUBLIC</p><p>  "-//Hi

123、bernate/Hibernate Configuration DTD 3.0//EN"</p><p>  "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"></p><p>  <hibernate-configuration></p>&l

124、t;p>  <session-factory></p><p>  <property name="hibernate.connection.username">root</property></p><p>  <property name="hibernate.connection.password"

125、;></property></p><p>  <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property></p><p>  <property name="hibernate.connection.ur

126、l"></p><p>  jdbc:mysql://localhost:3306/CFY?useUnicode=true&amp;</p><p>  characterEncoding=UTF-8</p><p>  </property></p><p>  <property name=&qu

127、ot;hibernate.connection.autocommit">true</property></p><p>  <property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property></p><p>  <pr

128、operty name="hibernate.hbm2ddl.auto">update</property></p><p>  <property name="hibernate.show_sql">true</property></p><p>  <mapping resource="c

129、n/cfy/domain/CfyUsers.hbm.xml"/></p><p>  <mapping resource="cn/cfy/domain/CfyMenu.hbm.xml"/></p><p>  <mapping resource="cn/cfy/domain/CfyOrders.hbm.xml"/&g

130、t;</p><p>  <mapping resource="cn/cfy/domain/CfyAssess.hbm.xml"/></p><p>  </session-factory></p><p>  </hibernate-configuration></p><p>  4

131、.3 功能模塊的實現(xiàn)</p><p>  4.3.1消費者模塊的實現(xiàn)</p><p>  消費者可以實現(xiàn)點餐、下單、撤單、評價等功能,業(yè)務(wù)流程,如圖4-1所示:</p><p>  功能實現(xiàn),操作界面如下所示:這行文字出現(xiàn)的奇怪???</p><p>  4.3.1.1系統(tǒng)登錄</p><p>  進入登錄界面,輸入賬

132、號密碼,驗證之后登錄系統(tǒng):</p><p><b>  圖4-2 系統(tǒng)登錄</b></p><p>  4.3.1.2消費者模塊功能</p><p>  功能說明:點菜、下單、撤單、評價。關(guān)鍵代碼如下:</p><p>  顯示菜單關(guān)鍵代碼:(只需要主要代碼列出)</p><p>  CfyMen

133、uAction.java</p><p>  public String getAllMenu(){</p><p>  return "getAllMenu";</p><p><b>  }</b></p><p>  public String getMenu(){</p><

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論