城市訂餐系統(tǒng)服務(wù)器端實現(xiàn)畢業(yè)設(shè)計_第1頁
城市訂餐系統(tǒng)服務(wù)器端實現(xiàn)畢業(yè)設(shè)計_第2頁
城市訂餐系統(tǒng)服務(wù)器端實現(xiàn)畢業(yè)設(shè)計_第3頁
城市訂餐系統(tǒng)服務(wù)器端實現(xiàn)畢業(yè)設(shè)計_第4頁
城市訂餐系統(tǒng)服務(wù)器端實現(xiàn)畢業(yè)設(shè)計_第5頁
已閱讀5頁,還剩35頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、摘 要 二十一世紀是一個集數(shù)字化,網(wǎng)絡(luò)化,信息化的,以網(wǎng)絡(luò)為核心的社會。中國的 網(wǎng)民充分領(lǐng)略到“暢游天地間,網(wǎng)絡(luò)無極限” 所帶來的暢快。隨著 Internet 的飛速發(fā) 展,使得網(wǎng)絡(luò)的應(yīng)用日益的廣泛。如電子商務(wù),電子政務(wù),網(wǎng)上醫(yī)療,網(wǎng)上娛樂,網(wǎng) 絡(luò)游戲,網(wǎng)絡(luò)教學等。 本次畢業(yè)設(shè)計的題目就是網(wǎng)絡(luò)訂餐系統(tǒng)。本論文就畢業(yè)設(shè)計的內(nèi)容,系統(tǒng)地闡述 了整個網(wǎng)絡(luò)訂餐系統(tǒng)的功能及實現(xiàn)。實現(xiàn)了從菜品管理,菜品分類和查詢,到訂餐車 實現(xiàn),用戶訂單處理,再到系統(tǒng)管理?;旧蠈崿F(xiàn)了網(wǎng)上購物的功能流程,能夠?qū)崿F(xiàn) 用戶與商家在網(wǎng)上進行訂餐交易。本系統(tǒng)界面簡單直觀,易于操作和使用,交互性強, 完全基于 Internet 網(wǎng)

2、絡(luò)。 經(jīng)過分析,我們使用 SUN 公司的 JSP 開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā) 工具,尤其是數(shù)據(jù)窗口這一能方便而簡潔操縱數(shù)據(jù)庫的智能化對象,首先在短時間內(nèi)建立 系統(tǒng)應(yīng)用原型,然后,對初始原型系統(tǒng)進行需求迭代,不斷修正和改進,直到形成滿意的可 行系統(tǒng)。 關(guān)鍵詞:關(guān)鍵詞:JSP 技術(shù)簡介 MYSQL 數(shù)據(jù)庫 網(wǎng)上購物的優(yōu)勢 ABSTRACT The 21st century is a set of digital, networked, information technology, to network- centric society. Internet users in Chin

3、a to fully appreciate the swim between heaven and earth, the network has no limit to bring the fun. With the rapid development of Internet, the increasingly wide range of network applications. Such as e-commerce, e-government, healthcare, online entertainment, online games, network teaching. The sub

4、ject of this graduation project is a network reservation system.In this thesis, the content of the graduation project, a systematic exposition of the entire network reservation system features and implementation. Management from the dishes, dishes classification and query, to ordering vehicles to ac

5、hieve the user order processing, and then to system management. Basically achieved the functionality of the online shopping process, users and businesses online ordering transactions. The system interface is simple and intuitive, easy to operate and use, interactive, based entirely on the Internet.

6、After analysis, we use Sun Microsystems JSP development tools, its use of the various object-oriented development tools, especially in the data window can be simple and easy to manipulate intelligence database objects, first in a short time to establish a system application demand for iterative prot

7、otype, and then, the initial prototype system, constantly revised and improved until a satisfactory viable system. Key words:enterprise performance performance assessmentproblem 目目 錄錄 1 1 前前 言言.1 1.11.1 開發(fā)背景開發(fā)背景.1 1.21.2 國內(nèi)外研究現(xiàn)狀國內(nèi)外研究現(xiàn)狀.1 1.31.3 系統(tǒng)設(shè)計目標系統(tǒng)設(shè)計目標.2 2 2 開發(fā)工具和環(huán)境簡介開發(fā)工具和環(huán)境簡介.4 2.12.1 JSPJSP 技

8、術(shù)簡介技術(shù)簡介.4 2.22.2 JSPJSP 工作原理工作原理.4 2.32.3 JSPJSP 體系結(jié)構(gòu)體系結(jié)構(gòu).4 2.42.4 JSPJSP 的特點的特點.5 2.52.5 MYSQLMYSQL 數(shù)據(jù)庫數(shù)據(jù)庫.5 2.62.6 系統(tǒng)數(shù)據(jù)庫連接系統(tǒng)數(shù)據(jù)庫連接.6 3 3 網(wǎng)絡(luò)訂餐服務(wù)管理系統(tǒng)功能分析網(wǎng)絡(luò)訂餐服務(wù)管理系統(tǒng)功能分析.11 3.13.1 系統(tǒng)功能分析系統(tǒng)功能分析.11 3.23.2 可行性研究可行性研究.11 3.33.3 需求分析需求分析.12 3.43.4 系統(tǒng)總體結(jié)構(gòu)圖系統(tǒng)總體結(jié)構(gòu)圖.13 4 4 網(wǎng)絡(luò)訂餐服務(wù)管理系統(tǒng)總體設(shè)計網(wǎng)絡(luò)訂餐服務(wù)管理系統(tǒng)總體設(shè)計.14 4.14.1

9、 系統(tǒng)功能設(shè)計目標系統(tǒng)功能設(shè)計目標.14 4.24.2 城市訂餐系統(tǒng)功能模塊劃分城市訂餐系統(tǒng)功能模塊劃分.14 4.34.3 網(wǎng)絡(luò)訂餐服務(wù)的體系結(jié)構(gòu)網(wǎng)絡(luò)訂餐服務(wù)的體系結(jié)構(gòu).15 4.44.4 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述.15 4.54.5 數(shù)據(jù)庫表設(shè)計數(shù)據(jù)庫表設(shè)計.15 5 5 系統(tǒng)詳細設(shè)計與實現(xiàn)系統(tǒng)詳細設(shè)計與實現(xiàn).17 5.15.1 程序說明程序說明.17 5.25.2 具體模塊劃分具體模塊劃分.17 6 6 系統(tǒng)測試系統(tǒng)測試.27 6.16.1 測試概念測試概念.27 6.26.2 城市訂餐系統(tǒng)服務(wù)器端采用的測試方法城市訂餐系統(tǒng)服務(wù)器端采用的測試方法.2727 6.36.3 系統(tǒng)測試用例

10、系統(tǒng)測試用例.27 6.46.4 系統(tǒng)測試總結(jié)系統(tǒng)測試總結(jié).28 結(jié)結(jié) 論論.30 謝謝 辭辭.31 參考文獻參考文獻.32 附附 錄錄.3333 1 1 前前 言言 1.11.1 開發(fā)背景開發(fā)背景 本系統(tǒng)用 JSP 語言來編寫網(wǎng)絡(luò)訂餐系統(tǒng),數(shù)據(jù)庫用 MYSQL 來連接系統(tǒng),通過編寫 JavaBeans 來進行后臺業(yè)務(wù)邏輯控制,即 JSP +JavaBeans + MYSQL 三層模式完成整個 設(shè)計工作。本系統(tǒng)全部基于 Internet 網(wǎng)絡(luò),以 JSP 語言對網(wǎng)站進行開發(fā),注重用戶與 網(wǎng)站的交互性。因此在這樣的背景下,針對當前 Internet 網(wǎng)絡(luò)發(fā)展趨勢來計網(wǎng)絡(luò)訂餐 系統(tǒng)就成為了當今應(yīng)用

11、軟件的首選體系結(jié)構(gòu)。 1.21.2 國內(nèi)外研究現(xiàn)狀國內(nèi)外研究現(xiàn)狀 1. 國外 據(jù)國外媒體報道,美國訂餐網(wǎng)站 OpenTable,該公司將將通過逐步增加餐館數(shù)量的 方式來進行發(fā)展,而不是急于收購其它公司而快速發(fā)展。 OpenTable 當前正致力于擴大服務(wù)的餐館數(shù)量,并說服更多的消費者在網(wǎng)上訂餐。 該公司當前只占加利福尼亞州北部地區(qū)訂餐服務(wù)的 20%,占全美國的 6%,因此公司仍 有著巨大的增長空間。 這是自 OpenTable 在今年 5 月 20 日上市以來,該公司在全美市場的布局才完成了 三分之一,它們的商業(yè)模式一直增長良好?!?OpenTable 在上月上市首日股價暴漲 59%,是 18

12、 個月以來美國上市公司首日漲幅 最大的公司。投資公司 Renaissance Capital 分析師保羅巴德(Paul Bard)認為, OpenTable 需要通過快速的增長來證明其物有所值,要實現(xiàn)這一目標,OpenTable 可能 需要進行收購。 既然 OpenTable 合作餐館已占全美訂餐餐館的三分之一,因此該市場也許太小以 至于無法支持其股價。他說,“OpenTable 的業(yè)務(wù)不算太壞,我們所關(guān)注的是其市場規(guī) 模,因為它將會見頂。” OpenTable 在 2008 年的營收為 5580 萬美元。該公司銷售一款軟件,餐館可以使用 該軟件管理用戶的訂餐,并追蹤消費者的偏好。根據(jù)提交給美

13、國證券交易委員會的文 件顯示,該款軟件的營收占據(jù)了 OpenTable 總營收的 52%。OpenTable 其它的絕大部分 營收,都來自于餐館向其支付的訂餐費用。消費者每從 OpenTable 網(wǎng)站上訂餐一次, 餐館將向 OpenTable 支付 1 美元的訂餐費。 OpenTable 的競爭對手和分析師預(yù)計,OpenTable 可能通過其它的一些方式來提 升自己的知名度,并增加新的營收。根據(jù)市場調(diào)研公司 ComScore 的統(tǒng)計,今年 4 月, OpenTable 的用戶總數(shù)已達到 116 萬,但仍不足消費者評論網(wǎng)站 Y 用戶的六分 之一。與 OpenTable 不同的是,Yelp 的絕大

14、部分營收都來自于廣告。 酒店推薦網(wǎng)站 UrbanSpoon 的創(chuàng)始人伊桑勞里(Ethan Lowry)表示,“我們確實對 OpenTable 將向何方發(fā)展,該公司將把 IPO 籌集到的資金用到什么方向持謹慎的態(tài)度。 ”UrbanSpoon 在今年 2 月已被美國互聯(lián)網(wǎng)巨頭 IAC/InterActiveCorp 收購。 IAC/InterActiveCorp 是搜索引擎 A 的母公司。 勞里認為,OpenTable 可能會適當?shù)倪M行一些收購。Yelp 首席執(zhí)行官杰里米斯托 普勒曼(Jeremy Stoppleman)此前曾表示,他的公司一直“在同 OpenTable 就所有形式 的整合問題進行

15、談?wù)摗?”只不過,兩家公司目前仍未能達成任何交易。 2. 國內(nèi) 國內(nèi)餐飲行業(yè)每年有著近 2 萬億元的市場,而第三方訂餐行業(yè)的市場份額只占到 其中很小一個份額,市場潛力無疑是廣闊的,進入訂餐行業(yè),是因為于互聯(lián)網(wǎng)技術(shù)革 新的財富效應(yīng)。 目前北京一年大概有三百億元的餐飲消費額,飯統(tǒng)網(wǎng)目前能影響到其中的兩個億 到三個億,1%的比例是很低的,從短期來看就會有 5%左右餐飲消費通過預(yù)定方式實現(xiàn), 這就是網(wǎng)站收入的增長空間;從中長期來看,網(wǎng)上訂餐的比例肯定可以達到 20%50%。 去年全國餐廳的消費額大概有一萬億元,并以每年 15%左右的速度迅速增長,如果網(wǎng)上 訂餐行業(yè)發(fā)展順利的話,在未來的三到五年的時間里

16、頭可以做到十億的數(shù)量級以上。 北京市商務(wù)委表示,2009 年 1-5 月北京餐飲業(yè)累計實現(xiàn)銷售收入 188.2 億元,同 比增長 13.3%,餐飲市場銷售額占全市社會消費品零售總額比重同比提高 0.3 個百分點, 達到 9.03%。假日經(jīng)濟和婚宴是 5 月推動餐飲消費額快速增長的兩大助力器。 北京市商務(wù)委分析,受“五一”和端午節(jié)影響,5 月市民外出就餐及來京旅游人員 增加,節(jié)日期間餐飲企業(yè)銷售額同比大幅增長。另外,受金融危機影響的順峰、全聚 德、便宜坊等高檔商務(wù)餐,5 月銷售量開始出現(xiàn)回升的趨勢。而此前市商務(wù)委發(fā)布的數(shù) 據(jù)顯示,今年前 4 個月,這些高檔商務(wù)餐銷售額同比最少下降了 10%。 此

17、外,5 月份網(wǎng)絡(luò)訂餐持續(xù)增加,據(jù)沸騰都市網(wǎng)監(jiān)測,網(wǎng)上訂餐比 4 月約上漲了兩 成。餐飲行業(yè)整體市場規(guī)模,2008 年餐飲業(yè)零售總額 1 萬億元,上海市大約 450 億元, 每年以 15以上的速度增長。 快餐,快餐占整個餐飲行業(yè)的份額大約是 50,上海 處于平均水平。外送,在中國外送的比例還不是很大,每年都在高速增長。商務(wù)樓訂 餐,在每一個城市,這都是一個龐大的用戶群體,不同的城市工作午餐訂餐的比列不 同,但絕大部分還是靠電話訂餐。網(wǎng)上訂餐,在起步階段,永和大王、麗華快餐等大 型快餐連鎖公司有自己的訂餐網(wǎng)站,北京和深圳有做到一定訂餐量和知名度的網(wǎng)站, 但是量還不大,上海也有幾家第三方訂餐網(wǎng)站在嘗

18、試,量還比較小。目標客戶及帶給 客戶什么利益: 餐廳信息豐富; 輕松便捷; 擁有更多的選擇; 也幫助餐廳伙伴增加 客流 。 1.31.3 系統(tǒng)設(shè)計目標系統(tǒng)設(shè)計目標 本系統(tǒng)的設(shè)計目的是為了滿足消費者只要通過互聯(lián)網(wǎng)就可以足不出戶的訂購自己 喜歡的菜品,改變傳統(tǒng)商業(yè)交易,在互聯(lián)網(wǎng)上進行交易,實現(xiàn)網(wǎng)上購買菜品。 本論文主要涉及軟件,數(shù)據(jù)庫與網(wǎng)絡(luò)技術(shù)等。涵蓋知識面廣,可有效地提高學生 綜合運用所學知識分析解決問題的能力,增強學生對事物的理解與掌握能力,培養(yǎng)學 生掌握科學的研究方法,正確的設(shè)計思想,獨立思考,勇于進取,探索創(chuàng)新,為今后 進一步學習與工作奠定了良好的基礎(chǔ)。 網(wǎng)上購物的優(yōu)勢在于選擇面大、價格便

19、宜、交易方便、節(jié)省時間和精力等。整個 菜品市場一片繁榮。在中國,網(wǎng)上購物有發(fā)展的必要,也有發(fā)展的基礎(chǔ),發(fā)展網(wǎng)上購 物的各方面條件也日趨成熟,但是還存在一些問題,只有把問題解決好了,才能保證 網(wǎng)上購物的蓬勃發(fā)展。 2 開發(fā)工具和環(huán)境簡介開發(fā)工具和環(huán)境簡介 2.12.1 JSPJSP 技術(shù)簡介技術(shù)簡介 JSP(Java Server Page 服務(wù)器網(wǎng)頁)是從 1998 年開始出現(xiàn)的新技術(shù)。由 Sun 公司 倡導、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術(shù)標準,是基于 JavaServlet 以及整 個 Java 體系的 web 開發(fā)技術(shù)。在傳統(tǒng)的網(wǎng)頁 HTML 文件(*.htm,*.html)中加入

20、腳本片 段和 JSP 標記(Tag),構(gòu)成 JSP 網(wǎng)頁(*.jsp)。JSP 技術(shù)為創(chuàng)建顯示動態(tài)生成內(nèi)容的 web 頁面提供了簡便的方法。JSP 作為 Java 家族的一員,承襲了 Java 的特點,即跨平臺的 特性,也即一次編譯,到處運行。 在國外,己經(jīng)大量使用 JSP 作為網(wǎng)絡(luò)應(yīng)用程序的開發(fā)工具,而在國內(nèi),盡管 JSP 還 不是主流開發(fā)技術(shù),但是由于 JSP 的強大優(yōu)勢,許多網(wǎng)站都已經(jīng)準備轉(zhuǎn)向 JSP,利用 JSP 來開發(fā)動態(tài)網(wǎng)站。 2.22.2 JSPJSP 工作原理工作原理 JSP 是面向服務(wù)器的,因此支持任何瀏覽器。當 Web 服務(wù)器和 JSP 引擎遇到訪問 JSP 網(wǎng)頁的請求時,

21、JSP 引擎將請求對象發(fā)送給服務(wù)器端的相關(guān)組件,比如 JavaBean 組件、Servlet 或 EJB 等,然后由服務(wù)器端組件處理這些請示,可能需要從數(shù)據(jù)庫或數(shù) 據(jù)存儲中檢索信息,然后服務(wù)器端組件再將響應(yīng)對象返回 JSP 引擎。JSP 引擎將響應(yīng)對 象傳遞給 JSP 頁面,根據(jù) JSP 頁面的 HTML 格式完成數(shù)據(jù)編排,最后 Web 服務(wù)器和 JSP 引擎將格式化后的 JSP 頁面以 HTML 格式返回客戶瀏覽器。這就是當前網(wǎng)站構(gòu)建中廣泛 采用的瀏覽器Web 服務(wù)器后臺數(shù)據(jù)庫的三層架構(gòu)模式。因為 JSP 所有程序操作 都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果。 2.32.3 J

22、SPJSP 體系結(jié)構(gòu)體系結(jié)構(gòu) JSP 網(wǎng)站開發(fā)標準給出了兩種使用 JSP 的技術(shù),可以歸納為模式一、模式二。 模式一:JSP+JavaBeans 技術(shù)在這種模式中,JSP 頁面獨自響應(yīng)請求并將處理結(jié) 果返回給客戶。Bean 處理所有數(shù)據(jù)訪問,JSP 實現(xiàn)頁面的表現(xiàn),以實現(xiàn)內(nèi)容生成與顯 示相分離。當處理復雜的大型應(yīng)用時,頁面被嵌入大量的腳本或 Java 代碼段,當需要 處理的商業(yè)邏輯復雜時,這種情況會變得非常糟糕,大量的內(nèi)嵌代碼使得頁面程序變 得復雜,對于前端界面設(shè)計人員,這是不可思議的事情。所以模式一可用于小型應(yīng)用, 不能夠滿足大型應(yīng)用的需要。 模式二:JSP+Servlet+JavaBean

23、s 技術(shù)Servlet 技術(shù)是一種采用 Java 技術(shù)來實現(xiàn) CGI 功能的一種技術(shù),Servlet 技術(shù)非常適于服務(wù)器端的處理和編程,并且 Servlet 會 長期駐留在內(nèi)存。從開發(fā)的觀點看,模式二具有更清晰的頁面表現(xiàn),清楚的開發(fā)者角 色劃分,在大規(guī)模項目開發(fā)中,模式二更被采用,模式二也更符合當前流行的 MVC 結(jié) 構(gòu)(Model/view/controller),其中 Servlet 對應(yīng) controller,處于控制者的位置,處 理 HTTP 請求,負責生成 JSP 中使用的 Beans 組件或?qū)ο?,并判斷?yīng)將請求傳遞給哪個 JSP 等,JSP 對應(yīng) view,負責生成最終的動態(tài)網(wǎng)頁并

24、返回給瀏覽器。而 JavaBeans 對應(yīng) 的是 Model,實現(xiàn)各個具體的應(yīng)用邏輯與功能。 2.42.4 JSPJSP 的特點的特點 1. 簡化的頁面生成技術(shù)。 JSP 頁面用標準的 HTML 或 XML 命令來處理頁面的格式化和布局設(shè)計,而用類似 HTML、XML 的標記和 Java 語言編寫的腳本程序生成頁面內(nèi)容。這使得頁面形式與頁面 內(nèi)容互相獨立,非常有利于大型項目的分工合作。 2. 與 Java 平臺有機集成。 JSP 技術(shù)是 Java 2 平臺的重要組成部分,JSP 使用 Java 語言作為它的腳本語言。 在 JSP 頁面中可以使用幾乎所有的 Java 組件和 Java API,這

25、就能充分發(fā)揮出 Java 語 言的強大功能。使用 JSP 技術(shù)可以創(chuàng)建具有高度可伸縮性和可靠性的 Web 應(yīng)用程序。 3. 硬件平臺和服務(wù)器無關(guān)性。 JSP 作為 Java 家族的一員,秉承了 Java 技術(shù)的“一次編寫,隨處可用(Write Once,Rum Anywhere)”的特性,可以運行于大多數(shù)流行的操作系統(tǒng)平臺及 Web 服務(wù)器, 這種與服務(wù)器硬件和操作系統(tǒng)平臺的無關(guān)性是 JSP 相對于其它動態(tài)網(wǎng)頁技術(shù)最大的一 個優(yōu)點。 4. 功能可擴展性。 如同的 JSP 技術(shù)可以通過 ActiveX/COM 組件來擴展功能一樣,JSP 可以通過 JavaBean 和 EJB(Enterpris

26、e JavaBean)以及自定義的標記來擴展功能。 JSP 可以通過 JDBC,與諸如 Oracle、MYSQL 這樣的大型關(guān)系數(shù)據(jù)庫進行連接。 JSP 提供了一些隱含對象。這些隱含對象在 JSP 頁面中可以直接引用,而不必首先 聲明。利用 JSP 提供的這些隱含對象,可以使腳本功能更加強大,并且編程更加容易、 方便。例如,利用 request 對象,可以很容易地接收用戶在 HTML 表單中提交的信息。 2.52.5 MYSQLMYSQL 數(shù)據(jù)庫數(shù)據(jù)庫 SQL Server 是由 Microsoft 開發(fā)和推廣的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(DBMS),它最初是 由 Microsoft、Sybase 和

27、 Ashton-Tate 三家公司共同開發(fā)的,并于 1988 年推出了第一 個 OS/2 版本。 SQL Server 近年來不斷更新版本,1996 年,Microsoft 推出了 SQL Server 6.5 版本;1998 年,SQL Server 7.0 版本和用戶見面;SQL Server 2000 是 Microsoft 公司于 2000 年推出的最新版本。 SQL Server 特點: 1. 真正的客戶機/服務(wù)器體系結(jié)構(gòu)。 2圖形化用戶界面,使系統(tǒng)管理和數(shù)據(jù)庫管理更加直觀、簡單。 3豐富的編程接口工具,為用戶進行程序設(shè)計提供了更大的選擇余地。 4SQL Server 與 Windo

28、ws NT 完全集成,利用了 NT 的許多功能,如發(fā)送和接受消 息,管理登錄安全性等。SQL Server 也可以很好地與 Microsoft BackOffice 產(chǎn)品集成。 5具有很好的伸縮性,可跨越從運行 Windows 95/98 的膝上型電腦到運行 Windows 2000 的大型多處理器等多種平臺使用。 6 對 Web 技術(shù)的支持,使用戶能夠很容易地將數(shù)據(jù)庫中的數(shù)據(jù)發(fā)布到 Web 頁面 上。 7SQL Server 提供數(shù)據(jù)倉庫功能,這個功能只在 Oracle 和其他更昂貴的 DBMS 中 才有。 2.62.6 系統(tǒng)數(shù)據(jù)庫連接系統(tǒng)數(shù)據(jù)庫連接 JDBC 技術(shù)是 Java DataBa

29、se Connectivity 的縮寫,它是 SUN 公司提供的一種支持 基本 SQL 功能的通用的應(yīng)用程序接口(Application Programming Interface)。它由一 組用 Java 語言編寫的類和接口組成。通過這些類和接口,程序開發(fā)人員可以在 Java 語言中方便地建立與數(shù)據(jù)庫的鏈接,通過執(zhí)行相應(yīng) SQL 語句,完成對不同數(shù)據(jù)庫的訪 問。因此,開發(fā)人員使用 JDBC API 可以不必編寫一個應(yīng)用程序來訪問 Sybase 數(shù)據(jù)庫, 又另外編寫一個應(yīng)用程序去訪問 Oracle 數(shù)據(jù)庫,再寫一個應(yīng)用程序訪問的 MYSQL。不 但如此,使用 Java 語言編寫的應(yīng)用程序可以在

30、任何支持 Java 的平臺上運行,不必在 不同的平臺上開發(fā)不同的應(yīng)用程序。 簡單地說,JDBC 能完成下列三件事: 1. 同一個數(shù)據(jù)庫建立連接;2. 向數(shù)據(jù)庫建立連接;3. 處理數(shù)據(jù)庫返回的結(jié)果。 JDBC 是一種通用低層的應(yīng)用程序編程接口,它在不同的數(shù)據(jù)庫功能模塊的層次上 提供一個統(tǒng)一的用戶界面。說 JDBC 是一處低級的 API,是指它直接調(diào)用 SQL 命令,它 比其他的一些數(shù)據(jù)庫連接 API 要容易使用些,但它有同樣可以作為更高級的,用戶辦 面更友好的 API 或開發(fā)工具基礎(chǔ)。 很多可視化的 Java 開發(fā)工具,如 Visual Age For Java、Visual Caf、J+等都

31、提供了基于 JDBC 的更面向用戶的類和包,直接將關(guān)系數(shù)據(jù)庫的表或視圖映射為 Java 類,程序員通過可視化工具直接對 Java 對象進行操作,而真正需要的 SQL 調(diào)用則根據(jù) 程序員發(fā)出的對對象的各種屬性、方法的操作來自動產(chǎn)生。另一種使用 JDBC API 的方 式為,用戶程序可以提供一個界面(如菜單等)讓用戶選擇對數(shù)據(jù)庫進行的操作,選 中一個任務(wù)后,提示用戶輸入一些必要的信息,然后根據(jù)用戶的輸入產(chǎn)生相應(yīng)的 SQL 命令以及 Java 程序。通過這處方式,用戶可以完成對數(shù)據(jù)庫的操作,即使他并不了解 SQL 語法以及 JDBC 編程。 數(shù)據(jù)庫訪問的三層結(jié)構(gòu)如圖 2-1 所示,瀏覽器端程序要訪問

32、數(shù)據(jù)庫,首先通過中 間件,然后由中間件對數(shù)據(jù)庫操作權(quán)限進行認證,認證通過才能對數(shù)據(jù)庫進行操作。 圖 2-1 使用中間件的數(shù)據(jù)庫訪問三層結(jié)構(gòu) 用戶對數(shù)據(jù)庫的存取權(quán)限認證是中間件中完成,對數(shù)據(jù)庫的查詢、插入、更新和刪 除操作等都封裝在中間件中,該中間件位于服務(wù)器端,中間件對數(shù)據(jù)庫進行操作后, 再將處理結(jié)果通過 Web 服務(wù)器返回到瀏覽器端用戶。這樣,在用戶端輸入的用戶名和 密碼,可以通過加密算法進行加密后在網(wǎng)絡(luò)上傳輸,在中間件中進行解密認證,然后 再進行數(shù)據(jù)庫的存取操作,數(shù)據(jù)庫存取權(quán)限的用戶名和密碼出現(xiàn)在位于服務(wù)器端的中 間件中,這樣就更加安全。本系統(tǒng)采用的正是這樣的三層結(jié)構(gòu)的數(shù)據(jù)庫訪問模式。 在

33、三層模型中,命令將被發(fā)送到服務(wù)的”中間層” ,而”中間層”將 SQL 語句發(fā)送 到數(shù)據(jù)庫。數(shù)據(jù)庫處理 SQL 語句并將結(jié)果返回”中間層” ,然后”中間層”將它們返回 用戶。其模型如圖 2-2 所示。 圖 2-2 JDBC 的三層模型 因為”中間層”可以進行對訪問的控制并協(xié)同數(shù)據(jù)庫的更新,并且可以使用一個 易用的高層 API,這個 API 可以由“中間層”進行轉(zhuǎn)換,轉(zhuǎn)換成低層的調(diào)用。所以在許 多種情況下,三層模型可以提供更好的性能,本系統(tǒng)中所采用的就是此種模型。 JDBC 是 JAVA 應(yīng)用程序與數(shù)據(jù)庫的溝通橋梁。它提供了三項服務(wù)功能:一、與數(shù)據(jù) 庫建立連接。二、將 SQL 語句傳遞給數(shù)據(jù)庫。三

34、、從數(shù)據(jù)庫取得 SQL 語句的執(zhí)行結(jié)果。 當 JDBC 要與數(shù)據(jù)庫建立連接前,首先,它必須先取得連接此數(shù)據(jù)庫的 JDBC 驅(qū)動程序, Class.forName()即是在執(zhí)行此項工作。建立數(shù)據(jù)庫連接的第一步驟就是將 JDBC 驅(qū)動 程序的類載入至 JVM(Java VirtualL Machine)中,本系統(tǒng)中利用 java.lang.Class 類內(nèi)的 forName()靜態(tài)函數(shù)依據(jù)指定的類名稱,將 JDBC 驅(qū)動程序載入進來。完成載 入驅(qū)動程序的步驟后,必須使用 java.sal.DriverManager 類所提供的 getConnection()靜態(tài)函數(shù),取得與數(shù)據(jù)庫間的連接對象。此連

35、接對象的類類型為 java.sal.Connection,必須通過它才能將 SQL 指令傳遞給數(shù)據(jù)庫,而執(zhí)行結(jié)果也需要 通過連接對象來取得。當取得連接對象后,還必須取得 Statement 對象才能對數(shù)據(jù)庫 執(zhí)行 SQL 指令。Statement 主要實現(xiàn)兩個功能:執(zhí)行 SQL 語句以及取得執(zhí)行結(jié)果。在 java.sql.Statement 的 sql 對象中執(zhí)行查詢或修改命令的函數(shù)后傳回的是一個 ResultSet 對象,這個對象提供了一個存取 SQL 執(zhí)行結(jié)果的管道,以便通過它將表格 數(shù)據(jù)從數(shù)據(jù)庫中取出。每個 Statement 對象只能產(chǎn)生一個 ResultSet 對象。 數(shù)據(jù)庫連接如圖

36、 2-3 所示: 建立JDBC-ODBC橋 建立數(shù)據(jù)庫連接 建立是否成功出錯處理 否 是 執(zhí)行SQL操作 SQL是否出錯返回錯誤信息 返回執(zhí)行結(jié)果 是 否 圖 2-3 數(shù)據(jù)庫的連接處理 數(shù)據(jù)庫的連接處理具體實現(xiàn)如下: /建立 JDBCODBC 橋 sun.jdbc.odbc.JdbcOdbcDriver; /橋建立不成功時的錯誤處理 catch(ClassNotFoundException event) /建立與數(shù)據(jù)庫的連接,并發(fā)送 SQL 查詢語句,將結(jié)果保存到 rs 對象中 Con=建立 JDBCODBC 橋 Sql=SQL 查詢語句 執(zhí)行查詢 Rs=返回結(jié)果 /SQL 出錯處理 catc

37、h(SQLException e1) 有了 JDBC,向各種關(guān)系數(shù)據(jù)發(fā)送 SQL 語句就是一件很容易的事。換言之,有了 JDBC API,就不必為訪問 Sybase 數(shù)據(jù)庫專門寫一個程序,為訪問 Oracle 數(shù)據(jù)庫又專 門寫一個程序,或為訪問 Informix 數(shù)據(jù)庫又編寫另一個程序等等,程序員只需用 JDBC API 寫一個程序就夠了,它可向相應(yīng)數(shù)據(jù)庫發(fā)送 SQL 調(diào)用。同時,將 Java 語言和 JDBC 結(jié)合起來使程序員不必為不同的平臺編寫不同的應(yīng)用程序,只須寫一遍程序就可以讓 它在任何平臺上運行,這也是 Java 語言“編寫一次,處處運行”的優(yōu)勢。 Java 數(shù)據(jù)庫連接體系結(jié)構(gòu)是用于

38、 Java 應(yīng)用程序連接數(shù)據(jù)庫的標準方法。JDBC 對 Java 程序員而言是 API,對實現(xiàn)與數(shù)據(jù)庫連接的服務(wù)提供商而言是接口模型。作為 API,JDBC 為程序開發(fā)提供標準的接口,并為數(shù)據(jù)庫廠商及第三方中間件廠商實現(xiàn)與數(shù) 據(jù)庫的連接提供了標準方法。JDBC 使用已有的 SQL 標準并支持與其它數(shù)據(jù)庫連接標準, 如 ODBC 之間的橋接。JDBC 實現(xiàn)了所有這些面向標準的目標并且具有簡單、嚴格類型定 義且高性能實現(xiàn)的接口。 Java 具有堅固、安全、易于使用、易于理解和可從網(wǎng)絡(luò)上自動下載等特性,是編 寫數(shù)據(jù)庫應(yīng)用程序的杰出語言。所需要的只是 Java 應(yīng)用程序與各種不同數(shù)據(jù)庫之間進 行對話的

39、方法。而 JDBC 正是作為此種用途的機制。 JDBC 擴展了 Java 的功能。例如,用 Java 和 JDBC API 可以發(fā)布含有 applet 的網(wǎng)頁,而該 applet 使用的信息可能來自遠程數(shù)據(jù)庫企業(yè)也可以用 JDBC 通過 Intranet 將所有職員連到一個或多個內(nèi)部數(shù)據(jù)庫中(即使這些職員所用的計算機有 Windows、 Macintosh 和 UNIX 等各種不同的操作系統(tǒng)) 。隨著越來越多的程序員開始 使用 Java 編程語言,對從 Java 中便捷地訪問數(shù)據(jù)庫的要求也在日益增加。 MIS 管理員們都喜歡 Java 和 JDBC 的結(jié)合,因為它使信息傳播變得容易和經(jīng)濟。 企

40、業(yè)可繼續(xù)使用它們安裝好的數(shù)據(jù)庫,并能便捷地存取信息,即使這些信息是儲存在 不同數(shù)據(jù)庫管理系統(tǒng)上。新程序的開發(fā)期很短。安裝和版本控制將大為簡化。程序員 可只編寫一遍應(yīng)用程序或只更新一次,然后將它放到服務(wù)器上,隨后任何人就都可得 到最新版本的應(yīng)用程序。對于商務(wù)上的銷售信息服務(wù), Java 和 JDBC 可為外部客戶提 供獲取信息更新的更好方法。 簡單地說,JDBC 可做三件事:與數(shù)據(jù)庫建立連接、發(fā)送 SQL 語句并處理結(jié)果。 下列代碼段給出了以上三步的基本示例: Connection con = DriverManager.getConnection(jdbc:odbc:wombat,login,

41、 password) ; Statement stmt = con.createStatement() ; ResultSet rs = stmt.executeQuery(SELECT a, b, c FROM Table1) ; while (rs.next() ) int x = rs.getInt(a) ; String s = rs.getString(b) ; float f = rs.getFloat(c) ; 3 3 網(wǎng)絡(luò)訂餐服務(wù)管理系統(tǒng)功能分析網(wǎng)絡(luò)訂餐服務(wù)管理系統(tǒng)功能分析 為了最終實現(xiàn)目標系統(tǒng),必須設(shè)計出組成這個系統(tǒng)的所有程序和文件(或數(shù)據(jù)庫) 。 模塊是數(shù)據(jù)說明、可執(zhí)行語句

42、等程序設(shè)計對象的集合,它是單獨命名的而且可通過名 字來訪問。模塊化就是把程序化分成若干個模塊,每個模塊完成一個子功能,把這些 模塊集起來組成一個整體,可以完成指定的滿足問題的要求。 3.13.1 系統(tǒng)功能分析系統(tǒng)功能分析 首先對現(xiàn)有系統(tǒng)進行分析,現(xiàn)有系統(tǒng)是信息的重要來源。分析已有系統(tǒng)的功能和 實現(xiàn),從而確定新系統(tǒng)的設(shè)計目標和模型。由于條件有限,調(diào)研主要是在網(wǎng)上進行。 即通過在網(wǎng)上已有的訂餐網(wǎng)站注冊成會員來了解其具備的功能。 1. 從用戶角度來看: 用戶通過在線注冊成為網(wǎng)站的用戶,可以獲得以下功能:菜品瀏覽,購買菜品,修 改密碼,菜品簡介、訂餐車等。 2. 從網(wǎng)站的角度看: (1)網(wǎng)站應(yīng)該包含菜

43、品搜索功能:按菜品名(模糊)查詢。 (2)訂單處理功能,確認訂單方式: (3)管理員管理:查看用戶信息,并根據(jù)用戶信息和用戶訂單對菜品進行發(fā)派。 (4)菜品瀏覽 3.23.2 可行性研究可行性研究 可行性研究階段的主要任務(wù)是在系統(tǒng)初步調(diào)查的基礎(chǔ)上,對新系統(tǒng)是否能夠?qū)崿F(xiàn) 和值得實現(xiàn)等問題做出判斷,避免在花費了大量的人力和物力之后才發(fā)現(xiàn)系統(tǒng)不能實 現(xiàn)或新系統(tǒng)投入使用后沒有任何實際意義而引起的浪費,對新系統(tǒng)可行性的分析,要 求用最小的代價在盡量短的時間內(nèi)確定系統(tǒng)是否可行。 1. 技術(shù)可行性分析 網(wǎng)絡(luò)訂餐系統(tǒng)的開發(fā)是一項復雜的系統(tǒng)工程。為了保證系統(tǒng)開發(fā)成功,必須采用工 程化的系統(tǒng)開發(fā)方法,并研究出一些

44、符合工程化標準的開發(fā)方法。這些方法旨在指導 開發(fā)者進行工程化的系統(tǒng)開發(fā),從而加快系統(tǒng)開發(fā)的速度,保證質(zhì)量以及降低開發(fā)成 本。工程化的系統(tǒng)開發(fā)方法確實在開發(fā)實踐中取得了一定的效果。此次開發(fā)使用JSP作 為開發(fā)語言,采用Servlet技術(shù),Tomcat5.0作為Web服務(wù)器。 2. 運行可行性分析 隨著計算機知識的普及和推廣,越來越多的人掌握了計算機的基本使用方法 和技能。隨著 Internet 的發(fā)展,用戶對于網(wǎng)絡(luò)、WINDOWS 等環(huán)境下的軟件使用比 較熟悉,對于新鮮事物,用戶表現(xiàn)出極大的興趣和熱情。 3. 經(jīng)濟可行性分析 網(wǎng)絡(luò)訂餐系統(tǒng)給人們帶來了方便,成為一種全新的商務(wù)模式。因此,不用出 門

45、就可以在家購物的新時尚已經(jīng)到來,構(gòu)建一個網(wǎng)絡(luò)訂餐系統(tǒng)在經(jīng)濟上是完全可 行的。 就本系統(tǒng)而言,隨著電腦的普及,為學生在網(wǎng)絡(luò)上進行購物提供有利的條件。 而一個網(wǎng)絡(luò)訂餐系統(tǒng)可以為學生提供軟件條件,這樣學生便可以足不出戶的買菜 品了。商家可以從中獲得利潤,兩全其美。 通過以上的分析,開發(fā)網(wǎng)絡(luò)訂餐系統(tǒng)是完全可行的。 4. 運行環(huán)境 本系統(tǒng)采用聯(lián)網(wǎng)多機多用戶操作方式,系統(tǒng)的運行環(huán)境包括硬件、操作系統(tǒng)、 關(guān)系數(shù)據(jù)庫等軟件: 硬件:中央處理器(CPU):奔 4 以上的處理器; 硬 盤:80 GB 以上硬盤; 內(nèi) 存:512 MB; 顯示器: 17 寸顯示器; 操作系統(tǒng): Windows XP, 關(guān)系數(shù)據(jù)庫:

46、MYSQL ; 3.33.3 需求分析需求分析 需求分析的任務(wù)是通過詳細調(diào)查現(xiàn)實世界要處理的對象,充分了解系統(tǒng) 的工作概況,明確用戶的各種需求,然后在此基礎(chǔ)上確定新系統(tǒng)的功能。新 系統(tǒng)必須充分考慮今后可能的擴充和改變。 1在這里我們需要了解用戶有什么樣的具體要求和對系統(tǒng)性能的要求。 (1)用戶的需求分析: (a)用戶注冊 (b)用戶登錄 (c)菜品瀏覽 (d)菜品訂購 (e)菜品查詢 (f)訂單修改 (g)管理員 2. 系統(tǒng)性能分析 對數(shù)據(jù)的安全性、完整性要求:用戶信息保密,只有管理員能任意修改。確保網(wǎng) 上支付安全。菜品信息、用戶信息必須保證其完整性。防止惡意刪改。以下是系統(tǒng)性 能需求: (a

47、)準確性和可靠性高 (b)頁面友好,功能齊全,且可以使用 (c)系統(tǒng)便于維護和升級。 (d)數(shù)據(jù)庫訪問效率高 3.43.4 系統(tǒng)總體結(jié)構(gòu)圖系統(tǒng)總體結(jié)構(gòu)圖 圖 3-1 系統(tǒng)結(jié)構(gòu)圖 數(shù)據(jù)流圖: 數(shù)據(jù)流圖:是一種描述軟件系統(tǒng)邏輯模型的圖形符號。這種圖形表示即可以從本 質(zhì)上描述計算機軟件系統(tǒng)的工作情況,又適合非計算機專業(yè)人員學習和掌握,在需求 分析中是一種很好的交流和表達工具。 圖 3-3 流程圖流動方向 帶箭頭的線表示數(shù)據(jù)流,其中箭頭表示了數(shù)據(jù)的流動方向。 網(wǎng)絡(luò)訂餐系統(tǒng) 用 戶 注 冊 用 戶 登 錄 訂 單 瀏 覽 添 加 菜 品 刪 除 菜 品 修 改 菜 品 菜 品 信 息 4 網(wǎng)絡(luò)訂餐服務(wù)管

48、理系統(tǒng)總體設(shè)計網(wǎng)絡(luò)訂餐服務(wù)管理系統(tǒng)總體設(shè)計 4.14.1 系統(tǒng)功能設(shè)計目標系統(tǒng)功能設(shè)計目標 理論系統(tǒng)功能設(shè)計目標如下: 1. 實用性強:我們努力使系統(tǒng)符合實際操作流程的習慣,并盡量減少用戶的輸入, 易學易用的友好的用戶界面,滿足各層次的用戶使用的需求; 2. 先進的程序結(jié)構(gòu):使用當代前衛(wèi)的軟件編程,能延長其生命周期,易于維護與 管理; 3. 安全可靠性高:后臺維護功能齊全,根據(jù)平臺在各個階段不同的使用情況,管 理人員可以設(shè)置相應(yīng)的操作權(quán)限,增加系統(tǒng)注冊,分配各個欄目的管理權(quán)限,實現(xiàn)系 統(tǒng)的維護,保證系統(tǒng)的安全、可靠; 4. 使用模塊化設(shè)計的方法:使系統(tǒng)具有良好的可擴充性,以適應(yīng)其不同階段的發(fā)

49、展需要,便于后來者分析、維護; 5. 操作簡單,維護方便:每個子系統(tǒng)都具有相對獨立的系統(tǒng)維護功能 對可變化的項目可自行維護; 6. 查詢功能強大:可以對菜品的基本情況、用戶基本情況,菜品評信息,用戶留 言等按各種方式查詢,可形成各種表單,同時還可對其進行匯總,使管理人員能及時 準確地掌握用戶和菜品等的基本情況。 4.24.2 城市訂餐系統(tǒng)功能模塊劃分城市訂餐系統(tǒng)功能模塊劃分 根據(jù)需求分析與系統(tǒng)功能設(shè)計目標,結(jié)合實際情況本系統(tǒng)功能模塊設(shè)計分為如下 幾個模塊: 1 主頁:在這里我們可以看見本系統(tǒng)的主要功能和信息。 2 用戶注冊:在這里我們可以注冊我們的基本信息,其中電話和 Email 是比較 重要

50、的,因為我們需要對這些信息進行處理,以方便用戶的付款和郵購。 3 用戶登陸:為了方便用戶的付款,郵購和管理,我們需要變成會員后才可以 進行消費。 4 菜品瀏覽:成功登陸后的用戶可以分頁瀏覽菜品菜品,并將想要的菜品提交 到填寫訂單頁面。如果用戶還沒有注冊就直接進入或者沒有成功登陸就進入頁面,將 被連接到“用戶登錄頁面” 。 5 訂購菜品:成功登陸的用戶可以在該頁面定購所需要的菜品。如果用戶還沒 有注冊就直接進入或者沒有成功登陸就進入頁面,將被連接到“用戶登陸頁面” 。 6 查看訂單:成功登陸的用戶可以在該頁修改已經(jīng)訂購的菜品。如果用戶還沒 有注冊就直接進入或者沒有成功登陸就進入頁面,將被連接到“

51、用戶登陸頁面” 。 7 菜品查詢:成功登陸的用戶可以在該頁查找自己需要的菜品。如果用戶還沒 有注冊就直接進入或者沒有成功登陸就進入頁面,將被連接到“用戶登陸頁面” 。 8管理員:查看用戶訂單,查看用戶信息,并根據(jù)用戶信息和用戶訂單對菜品進 行發(fā)派。 4.34.3 網(wǎng)絡(luò)訂餐服務(wù)的體系結(jié)構(gòu)網(wǎng)絡(luò)訂餐服務(wù)的體系結(jié)構(gòu) 三層結(jié)構(gòu): 圖 4-1 結(jié)構(gòu)圖 即: JSP 技術(shù) + JavaBeans + MYSQL 數(shù)據(jù)庫 4.44.4 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述 數(shù)據(jù)庫系統(tǒng)是在文件系統(tǒng)的基礎(chǔ)上發(fā)展而來的,經(jīng)歷了層次數(shù)據(jù)庫、網(wǎng)狀數(shù)據(jù)庫、 關(guān)系數(shù)據(jù)庫三個階段。由于關(guān)系數(shù)據(jù)庫采用人們比較容易理解和接受的二維表格來

52、組 織數(shù)據(jù),發(fā)展迅速,已成為數(shù)據(jù)庫產(chǎn)品的主流。 本系統(tǒng)的前端開發(fā)是使用 JSP 技術(shù),通過 JavaBeans 進行邏輯控制和數(shù)據(jù)庫連接, 而后臺數(shù)據(jù)庫采用的是 MYSQL。MYSQL 數(shù)據(jù)庫管理系統(tǒng)是一項全面完整的數(shù)據(jù)庫與 分析產(chǎn)品。MYSQL 非常容易學習、使用,介紹、學習資料比較多,MYSQL 全面支持 Web 功能的數(shù)據(jù)庫解決方案,與此同時,MYSQL 還在可伸縮性與可靠性方面保持著多 項基準測試紀錄,而這兩方面特性又都是企業(yè)數(shù)據(jù)庫系統(tǒng)在激烈市場競爭中克敵致勝 的關(guān)鍵所在。無論以應(yīng)用程序開發(fā)速度還是以事務(wù)處理運行速度來衡量,MYSQL 都堪 稱最為快捷的數(shù)據(jù)庫系統(tǒng)。 對比 MYSQL

53、和其他的大型數(shù)據(jù)庫管理系統(tǒng),MYSQL 具有可靠的安全性,較快的 存儲速度,高度的兼容性,簡單易用,應(yīng)用 MYSQL 作為后臺數(shù)據(jù)庫為系統(tǒng)的開發(fā)提 供了強有力的支持,并對以后軟件的運行提供了堅實的基礎(chǔ),因此,我們采用了 MYSQL 作為后臺數(shù)據(jù)庫。 4.54.5 數(shù)據(jù)庫表設(shè)計數(shù)據(jù)庫表設(shè)計 本系統(tǒng)的數(shù)據(jù)庫其中包括九個表,分別為菜品菜品表 goods, 用戶注冊表 userinfo, 菜品類型表 cart,定單詳細信息表 orders。詳情請見下面的數(shù)據(jù)庫表: 表 4-1 菜品信息表 goods 字段名類型位數(shù)是否為空 goodidint10是 goodnamevarchar64否 goodpri

54、cefloat10否 goodqualityint10否 goodpublishvarchar128否 視 圖 邏輯處理 數(shù) 據(jù) 庫 表 4-2 注冊用戶表userinfo 字段名類型位數(shù)是否為空 useridint10是 usernamevarchar12否 userpasswordvarchar12否 roleint10否 表 4-3 定單詳細信息表 orders 字段名類型位數(shù)是否為空 useridint10否 orderidint10否 goodidint10是 typeint10否 goodnamevarchar64是 goodpricefloat10是 goodqualityint

55、10是 goodpublishvarchar128是 表 4-4 菜品類型cart 字段名類型位數(shù)是否為空 useridint10否 goodidint10否 numint10否 5 5 系統(tǒng)詳細設(shè)計與實現(xiàn)系統(tǒng)詳細設(shè)計與實現(xiàn) 5.15.1 程序說明程序說明 根據(jù)前邊的需求分析和系統(tǒng)總體設(shè)計內(nèi)容進行程序設(shè)計。本系統(tǒng)是以 Java 語言為 基礎(chǔ)進行開發(fā)的。我個人負責的模塊主要是采用 JSP 技術(shù)+JavaBeans+ MYSQL 模式進 行模塊開發(fā)與實現(xiàn)的。全部都以面向?qū)ο蟮姆椒ㄟM行設(shè)計和實現(xiàn)。 一在程序設(shè)計時,我用到了下面的一些定義,解釋如下: 1.Page 用來定義整個 JSP 頁面的一些屬性

56、和這些屬性的的值。 2.Page import 該屬性的作用是為 JSP 頁面引入 JAVA 核心包中的類,這樣就可以 在 JSP 頁面的程序片部分,變量及函數(shù)聲明部分,表達式部分使用的類??梢詾?該屬性指定多個值,該屬性的值可以是 JAVA 某個包中的所有類或一個具體的類。 3.include file 表示的是靜態(tài)的插入一個文件。 5.25.2 具體模塊劃分具體模塊劃分 5.2.1 主頁面模塊 圖 5-1 主頁頁面 public void doPost(HttpServletRequest request, HttpServletResponse response) throws Serv

57、letException,IOException DBConnect con = new DBConnect(); HttpSession session = request.getSession(); String username = (String)request.getParameter(username); String userpasswd = (String)request.getParameter(userpasswd); int role = Integer.parseInt(request.getParameter(role); String sql; ResultSet

58、rs; int id, quality; sql = select * from userinfo where username = + username + and userpassword = + userpasswd + and role = + role; try rs = con.executeQuery(sql); if(rs.next() if(role = 0) session.setAttribute(userid,String.valueOf(rs.getInt(1); response.sendRedirect(./manager/manager.htm); else i

59、f(role = 1) session.setAttribute(userid,String.valueOf(rs.getInt(1); response.sendRedirect(./customer/customer.jsp); else response.sendRedirect(./login_error.htm); rs.close(); con.close(); catch(Exception e) e.printStackTrace(); 5.5.2 用戶注冊模塊 用戶注冊是為第一次登錄網(wǎng)站的用戶所設(shè)計的。在用戶成為本站用戶之前一定要 注冊才可以訪問我網(wǎng)站的其它網(wǎng)頁。 用戶注冊包

60、括:登錄名稱,真實姓名,設(shè)置密碼,電子郵件等。 注冊成功后,才可以訪問本站的其他頁面。 圖 5-2 用戶注冊頁面 if(pareTo(del)=0) sql = delete from cart where userid = + userid + and goodid = + goodid;con.updateDb(sql); else if(pareTo(buy)=0) sql = select * from cart where userid = + userid + and goodid = + goodid ; rs = con.executeQuery(sql); if(rs.nex

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論