已閱讀5頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
畢 業(yè) 論 文題 目 網(wǎng)上訂餐系統(tǒng)的開發(fā) 英文題目 The Development of Online Order System院 系 專 業(yè) 姓 名 班級(jí)學(xué)號(hào) 指導(dǎo)教師 二零一二年五月I摘 要在Internet飛速發(fā)展的今天,互聯(lián)網(wǎng)成為人們快速獲取、發(fā)布和傳遞信息的重要渠道,它在人們政治、經(jīng)濟(jì)、生活等各個(gè)方面發(fā)揮著重要的作用。人們對(duì)餐飲的要求也越來越高,不僅要求色香味俱全,而且對(duì)于就餐的時(shí)間和方式也有了更高的要求。本次畢業(yè)設(shè)計(jì)的題目就是網(wǎng)上訂餐系統(tǒng)。在開發(fā)設(shè)計(jì)中,采用B/S(Browser/Server)結(jié)構(gòu),這種結(jié)構(gòu)使得數(shù)據(jù)只有結(jié)果集合在瀏覽器中顯示,數(shù)據(jù)的處理在服務(wù)器進(jìn)行,用戶不用安裝客戶端,而且由于通過服務(wù)器端統(tǒng)一管理數(shù)據(jù),易于保證數(shù)據(jù)的一致性。在開發(fā)中選擇了JSP+JavaBeans+Mysql的模式,實(shí)現(xiàn)了應(yīng)用程序邏輯和頁面顯示分離,界面設(shè)計(jì)更簡(jiǎn)單。本畢業(yè)設(shè)計(jì)的內(nèi)容,系統(tǒng)地闡述了整個(gè)網(wǎng)絡(luò)訂餐系統(tǒng)的功能及實(shí)現(xiàn)。實(shí)現(xiàn)了從菜品管理,菜品分類和查詢,到訂餐車實(shí)現(xiàn),用戶訂單處理,再到系統(tǒng)管理?;旧蠈?shí)現(xiàn)了網(wǎng)上訂餐的功能流程,能夠?qū)崿F(xiàn)用戶與餐廳在網(wǎng)上進(jìn)行訂餐交易。本系統(tǒng)界面簡(jiǎn)單直觀,易于操作和使用,交互性強(qiáng),完全基于Internet網(wǎng)絡(luò)。關(guān)鍵詞:網(wǎng)上訂餐系統(tǒng) B/S結(jié)構(gòu) JSP JavaBeans AbstractToday in the rapid development of Internet, the Internet become faster access, publish, and an important channel for transmitting information, it is the political, economic, and other aspects of life play an important role. Higher and higher demands on the restaurant, requires not only the color, flavor and taste,but also greater demands on the time and manner of dining.The graduation design is the subject of the online order system.In developing, it adopts the structure of B/S (Browser/Server.) This structure makes only concourse of result data print in the browser. And this kind of structure can lighten client burden greatly. As the server administers the data in unison, it is apt to guarantee the consistency of the data.Chose in the development JSP+JavaBeans+Mysql Pattern,Realized The contact surface design is simpler.The present paper on graduation projects content, elaborated systematically the entire online order system management systems function and realizes. Has realized from the merchandise control, the classification of goods and the inquiry, realizes to the shopping cart, user order form processing, arrives at the chatroom again, the manager system. Basically has realized the electronic commerce function flow, can realize the user and the business on-line carries on the commodity exchange. This system contact surface simple direct-viewing, simplify operation and use, interactive is strong, completely based on the Internet network.Key words: Online order system The structure of B/S JSP JavaBeans目 錄1 系統(tǒng)概要11.1 課題的來源及其意義11.2 系統(tǒng)開發(fā)設(shè)計(jì)思想11.3 系統(tǒng)運(yùn)行環(huán)境11.4 系統(tǒng)開發(fā)設(shè)計(jì)目的22 開發(fā)環(huán)境、工具和主要技術(shù)32.1 開發(fā)環(huán)境的配置32.2 開發(fā)工具42.3 主要技術(shù)53 系統(tǒng)需求分析123.1 開發(fā)語言分析123.2 可行性分析133.3 系統(tǒng)體系結(jié)構(gòu)分析143.4 需求分析143.5 功能需求分析154 系統(tǒng)概要設(shè)計(jì)174.1 概要設(shè)計(jì)原則174.2 系統(tǒng)整體結(jié)構(gòu)174.3 系統(tǒng)功能設(shè)計(jì)184.4 數(shù)據(jù)庫設(shè)計(jì)205 系統(tǒng)詳細(xì)設(shè)計(jì)255.1 系統(tǒng)流程255.2 主要功能模塊的實(shí)現(xiàn)296 系統(tǒng)測(cè)試346.1 測(cè)試目標(biāo)346.2 測(cè)試方法346.3 部分測(cè)試結(jié)果與解決方法346.4 測(cè)試總結(jié)35參 考 文 獻(xiàn)36致 謝37371 系統(tǒng)概要1.1 課題的來源及其意義隨著現(xiàn)代科學(xué)技術(shù)的不斷提高,現(xiàn)今的生活節(jié)奏加快,人們的生活也與傳統(tǒng)的生活模式有很大的不同。其中互聯(lián)網(wǎng)在人們的生活中得到了廣泛的應(yīng)用,現(xiàn)在足不出戶,就能獲得自己需要的菜品和服務(wù)。人們對(duì)餐飲的要求也越來越高,不僅要求色香味俱全,而且對(duì)于就餐的時(shí)間和方式也有了更高的要求,許多顧客由于工作繁忙無法抽出時(shí)間來享受美味,一般是不愿自己去吃飯的,他們寧愿訂餐,尤其是一些白領(lǐng)。另外有很多的大學(xué)生在寢室里,不愿下寢室去吃飯,所以他們其中有很多的人喜歡訂餐。這時(shí)候他們必須有一個(gè)平臺(tái)來提供他們一些信息,網(wǎng)上訂餐系統(tǒng)就可以方便地為他們提供詳細(xì)的信息查詢。網(wǎng)上訂餐系統(tǒng)開發(fā)是為了更好地適應(yīng)市場(chǎng)需求,緩解餐廳的地域限制,為消費(fèi)者節(jié)省時(shí)間和精力、并實(shí)現(xiàn)更便捷的交易方式。通過網(wǎng)上訂餐系統(tǒng)使用戶可以足不出戶就能在網(wǎng)上進(jìn)行瀏覽菜品介紹、點(diǎn)菜訂餐,使管理人員快速方便的管理用戶、訂單以及菜單資料的維護(hù),這樣使得訂餐變得更方便。1.2 系統(tǒng)開發(fā)設(shè)計(jì)思想該系統(tǒng)是基于B/S(瀏覽器/服務(wù)器)模式實(shí)現(xiàn),基于MyEclipse集成開發(fā)環(huán)境平臺(tái)架構(gòu)開發(fā)設(shè)計(jì)。使用Java語言中的JSP技術(shù)和Mysql數(shù)據(jù)庫開發(fā),通過編寫JavaBeans來進(jìn)行后臺(tái)業(yè)務(wù)邏輯控制,主要實(shí)現(xiàn)對(duì)網(wǎng)上訂餐的使用、需求、以及用戶訂餐的動(dòng)態(tài)管理等。使得網(wǎng)上訂餐的管理更加及時(shí)、高效,提高了工作效率。該系統(tǒng)主要包括菜品管理,餐飲管理,預(yù)訂管理,用戶管理等幾個(gè)大的功能模塊。1.3 系統(tǒng)運(yùn)行環(huán)境操作系統(tǒng):Windows XP數(shù)據(jù)庫:Mysql網(wǎng)絡(luò)通信協(xié)議:TCP/IP支持軟件:Tomcat,MyEclipse1.4 系統(tǒng)開發(fā)設(shè)計(jì)目的通過本次系統(tǒng)開發(fā)設(shè)計(jì),可以更熟練掌握J(rèn)SP的基礎(chǔ)知識(shí),會(huì)用JSP連接數(shù)據(jù)庫,本次系統(tǒng)開發(fā)設(shè)計(jì)的難點(diǎn)是連接Mysql數(shù)據(jù)庫及學(xué)會(huì)用MyEclipse開發(fā)Web項(xiàng)目工程的基本方法。另外,通過寫畢業(yè)論文,掌握學(xué)術(shù)論文寫作的基本格式,獲得技術(shù)和理論上的提升。達(dá)到的目的主要有:(1) 掌握在MyEclipse集成開發(fā)環(huán)境中開發(fā)JSP工程的基本用法;(2) 熟悉Java語言;(3) 掌握J(rèn)SP中連接數(shù)據(jù)庫的基本步驟;(4) 掌握J(rèn)SP +JavaBeans + Mysql三層模式設(shè)計(jì)方法;(5) 提高綜合技能。2 開發(fā)環(huán)境、工具和主要技術(shù)2.1 開發(fā)環(huán)境的配置本系統(tǒng)是在 Windows XP操作系統(tǒng)下,使用JDK1.6和Tomcat6.0做為Java的解析運(yùn)行環(huán)境,進(jìn)行開發(fā)的。2.1.1 JDK1.6JDK(Java Development Kit)是Sun Microsystems針對(duì)Java開發(fā)員的產(chǎn)品。自從Java推出以來,JDK已經(jīng)成為使用最廣泛的Java SDK。JDK 是整個(gè)Java的核心,包括了Java運(yùn)行環(huán)境,Java工具和Java基礎(chǔ)的類庫。JDK是學(xué)好Java的第一步。所以Jdk1.6是Java運(yùn)行的必須環(huán)境,在進(jìn)行所有的開發(fā)之前,這個(gè)是必須的。按照J(rèn)DK的提示來安裝,安裝完之后設(shè)置環(huán)境變量。 JDK環(huán)境變量配置的步驟如下: (1) 我的電腦-屬性-高級(jí)-環(huán)境變量。 (2) 配置用戶變量: A 新建 Java_HOME 其值為D:jdk1.6.0_22 (JDK的安裝路徑);B 新建 PATH 其值為%Java_HOME%bin;%Java_HOME%jrebin; C 新建 CLASSPATH 其值為 .;%Java_HOME%lib;%Java_HOME%libtools.jar。(3) 測(cè)試環(huán)境變量配置是否成功開始-運(yùn)行-cmd;鍵盤敲入: javac、java;出現(xiàn)相應(yīng)的命令,而不是出錯(cuò)信息,即表示配置成功! 2.1.2 Tomcat6.0服務(wù)器Tomcat是一個(gè)免費(fèi)的開源的Servlet容器,它是Apache基金會(huì)的Jakarta項(xiàng)目中的一個(gè)核心項(xiàng)目,由Apache、Sun等公司共同開發(fā)而成。由于有了Sun的參與和支持,最新的Servlet和JSP規(guī)范能在Tomcat中得到體現(xiàn)。Tomcat 很受廣大程序員的喜歡,因?yàn)樗\(yùn)行時(shí)占用的系統(tǒng)資源小,擴(kuò)展性好,支持負(fù)載平衡與郵件服務(wù)等開發(fā)應(yīng)用系統(tǒng)常用的功能;而且它還在不斷的改進(jìn)和完善中,任何一個(gè)感興趣的程序員都可以更改它或在其中加入新的功能。Tomcat 是一個(gè)輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場(chǎng)合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。對(duì)于一個(gè)初學(xué)者來說,可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng)對(duì)HTML 頁面的訪問請(qǐng)求。實(shí)際上Tomcat 部分是Apache 服務(wù)器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)運(yùn)行Tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。1 2.2 開發(fā)工具本系統(tǒng)使用的開發(fā)工具主要有:MyEclipse6.0、Mysql5.0、Photoshop CS4。2.2.1 MyEclipse簡(jiǎn)介MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse Enterprise Workbench ,簡(jiǎn)稱MyEclipse)是對(duì)Eclipse IDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫和JavaEE的開發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML、CSS、Javascript、Struts、Spring、Hibernate、JSP、Tomcat、Mysql。MyEclipse結(jié)構(gòu)上的這種模塊化,可以讓我們?cè)诓挥绊懫渌K的情況下,對(duì)任一模塊進(jìn)行單獨(dú)的擴(kuò)展和升級(jí)。簡(jiǎn)單而言,MyEclipse是Eclipse的插件,也是一款功能強(qiáng)大的JavaEE集成開發(fā)環(huán)境,支持代碼編寫、配置、測(cè)試以及除錯(cuò)。2.2.2 Mysql簡(jiǎn)介Mysql是一種小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典Mysql AB公司。Mysql是一種關(guān)系數(shù)據(jù)庫管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉庫內(nèi)。這樣就增加了速度并提高了靈活性。Mysql的SQL“結(jié)構(gòu)化查詢語句”。SQL是用于訪問數(shù)據(jù)庫的最常用標(biāo)準(zhǔn)化語言。Mysql軟件采用了GPL。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了Mysql作為網(wǎng)站數(shù)據(jù)庫。Mysql的特性:(1) 性能快捷、優(yōu)化SQL語言(2) 容易使用、開放源代碼(3) 支持多線程,充分利用CPU資源(4) 可移植性和可靠性(5) 遵循國(guó)際標(biāo)準(zhǔn)和國(guó)際化支持(6) 為多種編程語言提供API2.2.3 Photoshop簡(jiǎn)介Photoshop是Adobe公司旗下開發(fā)的一個(gè)跨平臺(tái)的平面圖像處理軟件,是專業(yè)設(shè)計(jì)人員的首選軟件。集圖像掃描、編輯修改、圖像制作、廣告創(chuàng)意,圖像輸入與輸出于一體的圖形圖像處理軟件,深受廣大平面設(shè)計(jì)人員和電腦美術(shù)愛好者的喜愛。應(yīng)用領(lǐng)域:主要應(yīng)用于平面設(shè)計(jì)、網(wǎng)頁設(shè)計(jì)、數(shù)碼暗房、建筑效果圖后期處理以及影像創(chuàng)意等。2.3 主要技術(shù)2.3.1 Java簡(jiǎn)介Java是一種可以撰寫跨平臺(tái)應(yīng)用軟件的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,是由Sun Microsystems公司于1995年5月推出的Java程序設(shè)計(jì)語言和Java平臺(tái)(即JavaSE、 JavaEE、JavaME)的總稱。它繼承了 C+ 語言面向?qū)ο蠹夹g(shù)的核心,Java舍棄了C +語言中容易引起錯(cuò)誤的指針(以引用取代)、運(yùn)算符重載(operator overloading)、多重繼承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的對(duì)象所占據(jù)的內(nèi)存空間,使得程序員不用再為內(nèi)存管理而擔(dān)憂。在 Java SE 1.5 版本中,Java 又引入了泛型編程(Generic Programming)、類型安全的枚舉、不定長(zhǎng)參數(shù)和自動(dòng)裝/拆箱等語言特性。Java 不同于一般的編譯執(zhí)行計(jì)算機(jī)語言和解釋執(zhí)行計(jì)算機(jī)語言。它首先將源代碼編譯成二進(jìn)制字節(jié)碼(bytecode),然后依賴各種不同平臺(tái)上的虛擬機(jī)來解釋執(zhí)行字節(jié)碼,從而實(shí)現(xiàn)了“一次編譯、到處執(zhí)行”的跨平臺(tái)特性。Java是一種程序設(shè)計(jì)平臺(tái),既是開發(fā)環(huán)境,又是應(yīng)用環(huán)境。也是一種編程語言,面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,提供了編譯、運(yùn)行和調(diào)試工具。還是一種軟件平臺(tái),平臺(tái)是程序運(yùn)行的硬件或軟件環(huán)境,Java平臺(tái)與大多數(shù)其它平臺(tái)不同,是基于其它軟件或硬件的純軟件平臺(tái)。Java語言以其完全面向?qū)ο蟆⒑?jiǎn)單高效、與平臺(tái)無關(guān)、支持多線程、網(wǎng)絡(luò)安全性、嵌入瀏覽器運(yùn)行、健壯性、豐富的類庫等特點(diǎn),已成為計(jì)算機(jī)網(wǎng)絡(luò)編程的主流工具。 Java的核心機(jī)制:(1) Java虛擬機(jī)(Java Virtual Machine 簡(jiǎn)稱JVM)JVM并不是真正的機(jī)器,它是用來定義Java字節(jié)代碼在給定的計(jì)算機(jī)系統(tǒng)中如何被處理的一組規(guī)范,Java程序可以在具有虛擬機(jī)的任何計(jì)算機(jī)上運(yùn)行。JVM可以理解成一個(gè)以字節(jié)碼為機(jī)器指令的CPU。對(duì)于不同的運(yùn)行平臺(tái),有不同的虛擬機(jī)。JVM機(jī)制屏蔽了底層運(yùn)行平臺(tái)的差別,實(shí)現(xiàn)了“一次編譯,隨處運(yùn)行”。JVM提供了跨平臺(tái)能力的基礎(chǔ)框架,是程序在多個(gè)平臺(tái)之間進(jìn)行無縫移植的可靠保證,也是Java程序的安全檢驗(yàn)引擎。編譯后的Java程序指令并不直接在硬件系統(tǒng)的CPU上執(zhí)行,而是由JVM執(zhí)行。(2) 垃圾回收器(Garbage Collection)Java系統(tǒng)不僅要分配對(duì)象所用的內(nèi)存資源,還需要跟蹤資源的使用情況,定期檢測(cè)出不再使用的內(nèi)存,由系統(tǒng)自動(dòng)回收并做再次分配。在Java程序中不用考慮對(duì)象釋放的問題,因?yàn)镴ava提供了后臺(tái)系統(tǒng)級(jí)線程,記錄每次內(nèi)存分配的情況,并統(tǒng)計(jì)每個(gè)內(nèi)存的引用次數(shù),在Java虛擬機(jī)運(yùn)行時(shí)環(huán)境閑置時(shí),垃圾收集線程將檢查是否存在引用次數(shù)為 0的內(nèi)存,若有則釋放該內(nèi)存。 (3) 代碼安全性檢測(cè)Java Applet是從其他機(jī)器上下載到本機(jī)執(zhí)行的,在 Applet運(yùn)行之前,系統(tǒng)要對(duì)之進(jìn)行嚴(yán)格的三級(jí)代碼安全檢查,即驗(yàn)證、分析和跟蹤監(jiān)測(cè)。 2.3.2 JSP簡(jiǎn)介 JSP技術(shù)簡(jiǎn)介JSP(Java Server Page服務(wù)器網(wǎng)頁)是從1998年開始出現(xiàn)的新技術(shù)。由Sun公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn),是基于JavaServlet以及整個(gè)Java體系的Web開發(fā)技術(shù)。在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中加入腳本片段和JSP標(biāo)記(Tag),構(gòu)成JSP網(wǎng)頁(*.jsp)。JSP技術(shù)為創(chuàng)建顯示動(dòng)態(tài)生成內(nèi)容的Web頁面提供了簡(jiǎn)便的方法。JSP作為Java家族的一員,承襲了Java的特點(diǎn),即跨平臺(tái)的特性,也即一次編譯,到處運(yùn)行?,F(xiàn)在大量使用JSP作為網(wǎng)絡(luò)應(yīng)用程序的開發(fā)工具,盡管JSP還不是主流開發(fā)技術(shù),但是由于JSP的強(qiáng)大優(yōu)勢(shì),許多網(wǎng)站都已經(jīng)準(zhǔn)備轉(zhuǎn)向JSP,利用JSP來開發(fā)動(dòng)態(tài)網(wǎng)站。 JSP工作原理JSP是面向服務(wù)器的,因此支持任何瀏覽器。當(dāng)Web服務(wù)器和JSP引擎遇到訪問JSP網(wǎng)頁的請(qǐng)求時(shí),JSP引擎將請(qǐng)求對(duì)象發(fā)送給服務(wù)器端的相關(guān)組件,比如JavaBeans組件、Servlet或EJB等,然后由服務(wù)端組件處理這些請(qǐng)示,可能需要從數(shù)據(jù)庫或數(shù)據(jù)存儲(chǔ)中檢索信息,然后服務(wù)端組件再將響應(yīng)對(duì)象返回JSP引擎。JSP引擎將響應(yīng)對(duì)象傳遞給JSP頁面,根據(jù)JSP頁面的HTML格式完成數(shù)據(jù)編排,最后Web服務(wù)器和JSP引擎將格式化后的JSP頁面以HTML格式返回用戶瀏覽器。這就是當(dāng)前網(wǎng)站構(gòu)建中廣泛采用的瀏覽器Web服務(wù)器后臺(tái)數(shù)據(jù)庫的三層架構(gòu)模式。因?yàn)镴SP所有程序操作都在服務(wù)端執(zhí)行,網(wǎng)絡(luò)上傳送給用戶端的僅是得到的結(jié)果。 JSP體系結(jié)構(gòu)JSP有兩種開發(fā)模式技術(shù),即是JSP+JavaBeans和JSP+Servlet+JavaBeans。模式一:JSP+JavaBeans技術(shù),JSP頁面獨(dú)自響應(yīng)請(qǐng)求并將處理結(jié)果返回用戶。所有的數(shù)據(jù)通過Bean來處理JSP實(shí)現(xiàn)頁面的表現(xiàn)。這種模式技術(shù)實(shí)現(xiàn)了頁面的表現(xiàn)和頁面的商業(yè)邏輯相分離。大量使用這種模式形式,常常會(huì)導(dǎo)致頁面被嵌入大量的腳本語言或Java代碼。當(dāng)需要處理的商業(yè)邏輯很復(fù)雜時(shí),這種情況會(huì)變得非常糟糕。大量的代碼會(huì)使整個(gè)頁面變得常復(fù)雜。對(duì)于前端界面設(shè)計(jì)人員來說,這簡(jiǎn)直不可想象。這種情況在大項(xiàng)目中最為常見,這也造成了代碼的開發(fā)和維護(hù)出現(xiàn)困難,造成了不必要的資源浪費(fèi),在任何項(xiàng)目中,這樣的模式總會(huì)導(dǎo)致多多少少的定義不清的響應(yīng)和項(xiàng)目管理的困難。 綜上所訴,模式一不能滿足大型項(xiàng)目的需要,但是可以較好的滿足小型應(yīng)用,在簡(jiǎn)單的應(yīng)用中可以考慮模式一。模式二:JSP+Servlet+JavaBeans技術(shù),其中Servlets技術(shù)是一種采用Java技術(shù)來實(shí)現(xiàn)CGI功能的一種術(shù)。Servlets技術(shù)是運(yùn)行在Web服務(wù)器上,用來生成Web頁面。Servlets技術(shù)非常實(shí)用于服務(wù)器端的處理和編程,并且Servlet會(huì)長(zhǎng)期駐留在他們所處的位置。 但是在實(shí)際的項(xiàng)目開發(fā)過程中,頁面設(shè)計(jì)者可以方便地使用普通HTML工具來開發(fā)JSP頁面,Servlet卻更適合于后端開發(fā)者使用,開發(fā)Servlet需要的是Java集成開發(fā)環(huán)境,也就是說Servlet技術(shù)更需要編程人員。 這種模式技術(shù)結(jié)合了JSP和Servlet技術(shù)充分體現(xiàn)了兩者的技術(shù)優(yōu)點(diǎn)2。在這種模式中通過JSP來表現(xiàn)頁面。通過Servlet來完成大量的事務(wù)處理。 Servlet充當(dāng)一個(gè)控制者的角色,并負(fù)責(zé)向用戶發(fā)送請(qǐng)求。Servlet創(chuàng)建JSP所需要的Bean和對(duì)象,然后根據(jù)用戶的請(qǐng)求行為,決定將哪個(gè)JSP頁面發(fā)送給用戶。 從開發(fā)的觀點(diǎn),模式二具有更清晰的頁面表現(xiàn),清楚的開發(fā)者角色劃分,可以充分利用開發(fā)小組的界面設(shè)計(jì)人員,這些優(yōu)勢(shì)在大型項(xiàng)目開發(fā)中表現(xiàn)的尤為突出,使用這一模式,可以充分發(fā)揮每個(gè)開發(fā)者各自的特長(zhǎng),界面設(shè)計(jì)人員可以充分發(fā)揮自己的表現(xiàn)力,設(shè)計(jì)出優(yōu)美的界面表現(xiàn)形式,設(shè)計(jì)人員可以充分發(fā)揮自己的商務(wù)處理思維,來實(shí)現(xiàn)項(xiàng)目中的業(yè)務(wù)處理。在大型項(xiàng)目中,這種模式更被采用。但是,本系統(tǒng)開發(fā)只是一個(gè)小型的JSP應(yīng)用,同時(shí)由于Servlet難于掌握,所以在本課題中采用了模式一開發(fā),既JSP+JavaBeans。 JSP的特點(diǎn)3(1) 簡(jiǎn)化的頁面生成技術(shù)。JSP頁面用標(biāo)準(zhǔn)的HTML或XML命令來處理頁面的格式化和布局設(shè)計(jì),而用類似HTML、XML的標(biāo)記和Java語言編寫的腳本程序生成頁面內(nèi)容。這使得頁面形式與頁面內(nèi)容互相獨(dú)立,非常有利于大型項(xiàng)目的分工合作。(2) 與Java平臺(tái)有機(jī)集成。JSP技術(shù)是Java 2平臺(tái)的重要組成部分,JSP使用Java語言作為它的腳本語言。在JSP頁面中可以使用幾乎所有的Java組件和Java API,這就能充分發(fā)揮出Java語言的強(qiáng)大功能。使用JSP技術(shù)可以創(chuàng)建具有高度可伸縮性和可靠性的Web應(yīng)用程序。(3) 硬件平臺(tái)和服務(wù)器無關(guān)性。JSP作為Java家族的一員,秉承了Java技術(shù)的“一次編寫,到處運(yùn)行(Write Once,Rum Anywhere)”的特性,可以運(yùn)行于大多數(shù)流行的操作系統(tǒng)平臺(tái)及Web服務(wù)器,這種與服務(wù)器硬件和操作系統(tǒng)平臺(tái)的無關(guān)性是JSP相對(duì)于其它動(dòng)態(tài)網(wǎng)頁技術(shù)最大的一個(gè)優(yōu)點(diǎn)。(4) 功能可擴(kuò)展性。JSP技術(shù)可以通過ActiveX/COM組件來擴(kuò)展功能,JSP可以通過JavaBeans和EJB(Enterprise JavaBeans)以及自定義的標(biāo)記來擴(kuò)展功能。JSP可以通過JDBC,與諸如Oracle、Mysql這樣的關(guān)系數(shù)據(jù)庫進(jìn)行連接。JSP提供了一些隱含對(duì)象。這些隱含對(duì)象在JSP頁面中可以直接引用,而不必首先聲明。利用JSP提供的這些隱含對(duì)象,可以使腳本功能更加強(qiáng)大,并且編程更加容易、方便。例如,利用request對(duì)象,可以很容易地接收用戶在HTML表單中提交的信息。42.3.3 JavaBeans簡(jiǎn)介JavaBeans被稱為是Java組件技術(shù)的核心。JavaBeans的結(jié)構(gòu)必須滿足一定的命名約定。JavaBeans能提供常用功能并且可以重復(fù)使用。JavaBeans可以在JSP程序中應(yīng)用給我們帶來了很大的方便,這使得開發(fā)人員可以把某些關(guān)鍵功能和核心算法提取出來,封裝成為一個(gè)組件對(duì)象,增加了代碼的重用率、系統(tǒng)的安全性。比如我們可以將訪問數(shù)據(jù)庫的功能、數(shù)據(jù)處理功能編寫封裝為JavaBeans組件,然后在某個(gè)JSP程序中加以調(diào)用。JavaBeans技術(shù)有著很大的優(yōu)越性,例如JavaBeans的與平臺(tái)無關(guān)性,使得JavaBeans組件不但可以運(yùn)行于Unix平臺(tái),還可以運(yùn)行在Windows平臺(tái)下面,而且JavaBeans從一個(gè)平臺(tái)移植到另外的平臺(tái)上代碼不需要修改,甚至不需要重新編譯。另一方面JavaBeans容易編寫,用起來也方便得多。JavaBeans組件要想在JSP程序中使用JavaBeans,組件必須應(yīng)用等JSP的操作指令。JavaBeans描述了Java的軟件組件模型,應(yīng)用程序開發(fā)者把JavaBeans組件拖放到集成開發(fā)環(huán)境的工具箱中,再將其應(yīng)用于應(yīng)用軟件的開發(fā),對(duì)于JavaBeans組件的屬性、行為可以進(jìn)行必要的修改、測(cè)試和修訂而不必重新編寫和編譯程序。在JavaBeans模型中JavaBeans組件可以被修改或者與其他JavaBeans組件組合以生成新的JavaBeans組件或完整的Java應(yīng)用程序。每個(gè)JavaBeans組件都包含了一組屬性、操作和事件處理器。將若干個(gè)JavaBeans組件組合起來就可以生成開發(fā)者所需要的特定運(yùn)行行為,JavaBeans組件存放于容器或工具庫中,供開發(fā)者開發(fā)應(yīng)用程序5。 JavaBeans就是一個(gè)可以復(fù)用軟件模型。JavaBeans在某個(gè)容器中運(yùn)行提供具體的操作性能。JavaBeans是建立應(yīng)用程序的建筑模塊。大多數(shù)常用的JavaBeans通常是中小型控制程序,但我們也可以編寫包裝整個(gè)應(yīng)用程序運(yùn)行邏輯的JavaBeans組件,并將其嵌入到復(fù)合文檔中,以便實(shí)現(xiàn)更為復(fù)雜的功能。 一般來說JavaBeans可以表示為簡(jiǎn)單的GUI組件,可以是按鈕組件、游標(biāo)、菜單等等。這些簡(jiǎn)單的JavaBeans組件提供了告訴用戶什么是JavaBeans的直觀方法。但我們也可以編寫一些不可見的JavaBeans,用于接受事件和在幕后工作,例如訪問數(shù)據(jù)庫執(zhí)行查詢操作的,JavaBeans它們?cè)谶\(yùn)行時(shí)刻不需要任何可視的界面。62.3.4 JDBC簡(jiǎn)介JDBC(Java Data Base Connectivity,Java數(shù)據(jù)庫連接)是一種用于執(zhí)行SQL語句的Java API,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用Java語言編寫的類和接口組成。JDBC為工具/數(shù)據(jù)庫開發(fā)人員提供了一個(gè)標(biāo)準(zhǔn)的API,據(jù)此可以構(gòu)建更高級(jí)的工具和接口,使數(shù)據(jù)庫開發(fā)人員能夠用純 Java API 編寫數(shù)據(jù)庫應(yīng)用程序。通過這些類和接口,程序開發(fā)人員可以在Java語言中方便地建立與數(shù)據(jù)庫的鏈接,通過執(zhí)行相應(yīng)SQL語句,完成對(duì)不同數(shù)據(jù)庫的訪問。因此,開發(fā)人員使用JDBC API可以不必編寫一個(gè)應(yīng)用程序去訪問Oracle數(shù)據(jù)庫,再寫一個(gè)應(yīng)用程序訪問的Mysql數(shù)據(jù)庫。不但如此,使用Java語言編寫的應(yīng)用程序可以在任何支持Java的平臺(tái)上運(yùn)行,不必在不同的平臺(tái)上開發(fā)不同的應(yīng)用程序。下面結(jié)合代碼來簡(jiǎn)單描述一下在Java中使用JDBC的基本步驟7:(以連接Mysql數(shù)據(jù)庫、數(shù)據(jù)庫名為jiang、表名為user為例)(1) 注冊(cè)驅(qū)動(dòng)Class.forName(com.mysql.jdbc.Driver);(2) 建立連接String url = jdbc:mysql:/localhost:3306/jiang;String user = root;String password = root;Connection conn =DriverManager.getConnection(url,user,password);(3) 創(chuàng)建語句Statement st = conn.createStatement();(4) 執(zhí)行語句ResultSet rs = st.executeQuery(select * from user);(5) 處理結(jié)果while (rs.next() /參數(shù)中的1,2,3,4指的是sql中的列索引。System.out.println(rs.getObject(1) + t + rs.getObject(2)+ t+rs.getObject(3) + t+rs.getObject(4);(6) 釋放資源rs.close();st.close();conn.close();3 系統(tǒng)需求分析3.1 開發(fā)語言分析隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,基于瀏覽器/服務(wù)器(Browser/Server 簡(jiǎn)稱B/S)體系結(jié)構(gòu)的應(yīng)用程序得到了空前廣泛的應(yīng)用。但是服務(wù)器之間的通訊,尤其是在不同平臺(tái)上運(yùn)行的服務(wù)器之間的通訊仍然不是一件容易的事情。因?yàn)榇蠖鄶?shù)Internet應(yīng)用程序都是以數(shù)據(jù)庫為中心的,方便的訪問多種數(shù)據(jù)源的能力也比以往任何時(shí)候都更加重要。JSP無疑可以輕松地實(shí)現(xiàn)這類功能,JSP技術(shù)是一種服務(wù)器端的HTML頁面中嵌入Java代碼的腳本語言,它比一般腳本語言的執(zhí)行速度更快,由于JSP是基于Java語言的,所以它可以運(yùn)行在UNIX/LINUX和WINDOWS平臺(tái)上,是一種難得的動(dòng)態(tài)網(wǎng)頁開發(fā)語言8。在動(dòng)態(tài)內(nèi)容的解決問題中,還存在其他的解決方法,但是開發(fā)人員要掌握這些技術(shù)很難。例如,Java Servlets這樣的技術(shù)就可以使得用Java語言編寫交互式的應(yīng)用程序的服務(wù)器端的代碼變得更加簡(jiǎn)單。Java Servlets就是一個(gè)基于Java技術(shù)的運(yùn)行在服務(wù)器端的程序(與Applet不同,后者運(yùn)行在瀏覽器端)。開發(fā)人員編寫出Servlet程序,用來接收來自Web瀏覽器的HTTP請(qǐng)求,動(dòng)態(tài)地生成響應(yīng),然后發(fā)送包含HTML或XML文檔到瀏覽器。但是使用這種方法,整個(gè)網(wǎng)頁必須都在Java Servlet中制作。如果開發(fā)人員或者Web管理人員想要調(diào)整頁面的顯示,就不得不從新編輯并編譯Java Servlet程序。采用這種方法,編寫帶有動(dòng)態(tài)內(nèi)容的頁面需要有很熟練的應(yīng)用程序開發(fā)技巧和經(jīng)驗(yàn)。很顯然,一個(gè)簡(jiǎn)單的創(chuàng)建動(dòng)態(tài)頁面的解決方案要能解決以下的問題: (1) 能夠在任何Web或應(yīng)用程序服務(wù)器上運(yùn)行(2) 將應(yīng)用程序邏輯和頁面顯示分離(3) 能夠快速地開發(fā)和測(cè)試(4) 簡(jiǎn)化開發(fā)基于Web的交互式應(yīng)用程序的過程JSP滿足這些要求,它整合了存在的Java編程環(huán)境提供支持的技術(shù)和工具,產(chǎn)生了一種新的、開發(fā)基于Web應(yīng)用程序的方法,這個(gè)方法給予使用基于組件應(yīng)用的邏輯頁面的設(shè)計(jì)者提供了強(qiáng)大的功能9。3.2 可行性分析隨著經(jīng)濟(jì)的快速發(fā)展,電子商務(wù)越來越受到人們的關(guān)注。訂餐類網(wǎng)站,已如雨后春筍般的出現(xiàn)在了個(gè)大城市。當(dāng)代大學(xué)生與白領(lǐng)工作人士作為社會(huì)中的重要群體,他們對(duì)飲食的要求都在不斷提高,飲食在他們生活中起著重要作用。因此,面向大學(xué)生與都市白領(lǐng)人士的網(wǎng)上訂餐系統(tǒng)的設(shè)計(jì)有著良好的現(xiàn)實(shí)意義??尚行匝芯侩A段的主要任務(wù)是在系統(tǒng)初步調(diào)查的基礎(chǔ)上,對(duì)新系統(tǒng)是否能夠?qū)崿F(xiàn)和值得實(shí)現(xiàn)等問題做出判斷,避免在花費(fèi)了大量的人力和物力之后才發(fā)現(xiàn)系統(tǒng)不能實(shí)現(xiàn)或新系統(tǒng)投入使用后沒有任何實(shí)際意義而引起的浪費(fèi),對(duì)新系統(tǒng)可行性的分析,要求用最小的代價(jià)在盡量短的時(shí)間內(nèi)確定系統(tǒng)是否可行。103.2.1 技術(shù)可行性分析網(wǎng)絡(luò)訂餐系統(tǒng)的開發(fā)是一項(xiàng)復(fù)雜的系統(tǒng)工程。為了保證系統(tǒng)開發(fā)成功,必須采用工程化的系統(tǒng)開發(fā)方法,并研究出一些符合工程化標(biāo)準(zhǔn)的開發(fā)方法。這些方法旨在指導(dǎo)開發(fā)者進(jìn)行工程化的系統(tǒng)開發(fā),從而加快系統(tǒng)開發(fā)的速度,保證質(zhì)量以及降低開發(fā)成本。工程化的系統(tǒng)開發(fā)方法確實(shí)在開發(fā)實(shí)踐中取得了一定的效果。此次開發(fā)使用JSP作為開發(fā)語言,采用Servlet技術(shù),Tomcat5.0作為Web服務(wù)器。3.2.2 運(yùn)行可行性分析隨著計(jì)算機(jī)知識(shí)的普及和推廣,越來越多的人掌握了計(jì)算機(jī)的基本使用方法和技能。隨著Internet的發(fā)展,用戶對(duì)于網(wǎng)絡(luò)、WINDOWS等環(huán)境下的軟件使用比較熟悉,對(duì)于新鮮事物,用戶表現(xiàn)出極大的興趣和熱情。 3.2.3 經(jīng)濟(jì)可行性分析網(wǎng)絡(luò)訂餐系統(tǒng)給人們帶來了方便,成為一種全新的商務(wù)模式。就本系統(tǒng)而言,隨著電腦的普及,為學(xué)生在網(wǎng)絡(luò)上進(jìn)行訂餐提供有利的條件。而一個(gè)網(wǎng)絡(luò)訂餐系統(tǒng)可以為學(xué)生提供軟件條件,這樣學(xué)生便可以足不出戶的買菜品了。3.2.4 法律可行性該平臺(tái)是作為畢業(yè)設(shè)計(jì)與商業(yè)無關(guān),也是自主開發(fā)設(shè)計(jì),不會(huì)構(gòu)成侵權(quán),在法律上是可行的。因此,不用出門就可以在家訂餐的新時(shí)尚已經(jīng)到來,商家可以從中獲得利潤(rùn),兩全其美。構(gòu)建一個(gè)網(wǎng)絡(luò)訂餐系統(tǒng)在經(jīng)濟(jì)上是完全可行的。3.3 系統(tǒng)體系結(jié)構(gòu)分析B/S體系結(jié)構(gòu),即Browser/Server(瀏覽器/服務(wù)器)結(jié)構(gòu)。在這種體系結(jié)構(gòu)下,用戶通過瀏覽器向分布在網(wǎng)絡(luò)上的許多服務(wù)器發(fā)出請(qǐng)求,服務(wù)器對(duì)瀏覽器的請(qǐng)求進(jìn)行處理,將用戶所需信息返回到瀏覽器。B/S結(jié)構(gòu)簡(jiǎn)化了用戶端的工作,用戶機(jī)上只需配置少量的用戶端軟件。服務(wù)器將擔(dān)負(fù)更多的工作,對(duì)數(shù)據(jù)庫的訪問和應(yīng)用程序的執(zhí)行將在服務(wù)器上完成。瀏覽器發(fā)出請(qǐng)求,而其余如數(shù)據(jù)請(qǐng)求、加工、結(jié)果返回以及動(dòng)態(tài)網(wǎng)頁生成等工作全部由Web Server完成。用戶界面完全通過WWW瀏覽器實(shí)現(xiàn),一部分事務(wù)邏輯在前端實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn),形成所謂三層結(jié)構(gòu)。這種三層體系結(jié)構(gòu)如圖3-1所示。 Browse瀏覽器Web服務(wù)器 數(shù)據(jù)庫圖3-1 B/S三層架構(gòu)示意圖這種結(jié)構(gòu)在層與層之間相互獨(dú)立,任何一層的改變不會(huì)影響其它層的功能。綜上所述,我們可以得出這樣的結(jié)論:采用統(tǒng)一的B/S體系結(jié)構(gòu)開發(fā)的產(chǎn)品是最好的選擇,本系統(tǒng)也是選擇B/S結(jié)構(gòu)。3.4 需求分析需求分析的任務(wù)是通過詳細(xì)調(diào)查現(xiàn)實(shí)世界要處理的對(duì)象,充分了解系統(tǒng)的工作概況,明確用戶的各種需求,然后在此基礎(chǔ)上確定新系統(tǒng)的功能。新系統(tǒng)必須充分考慮今后可能的擴(kuò)充和改變11。網(wǎng)上訂餐管理系統(tǒng)無論是在應(yīng)用的深度還是廣度都是一個(gè)逐步發(fā)展的過程。在開發(fā)一個(gè)局部系統(tǒng)時(shí)要充分考慮到局部系統(tǒng)和整個(gè)目標(biāo)系統(tǒng)之間的相容性和完整性,以利于今后整個(gè)系統(tǒng)的建立。在具體的設(shè)計(jì)實(shí)現(xiàn)上我們圍繞著兩個(gè)方面的需求展開,即用戶和管理員。3.4.1 用戶需求用戶可以通過訪問該網(wǎng)上訂餐系統(tǒng),進(jìn)行注冊(cè)或登錄、查看或修改該用戶的信息、修改用戶的登錄密碼;也可以瀏覽或搜索菜品信息、在線留言、訂購并獲得想要的各種菜品。3.4.2 管理員需求管理員可以查看用戶菜品,并可以對(duì)菜品以及菜品種類進(jìn)行增刪改查;還可以對(duì)用戶、員工、訂單、采購材料、在線留言進(jìn)行系統(tǒng)性的管理。3.5 功能需求分析3.5.1 功能分析原則該系統(tǒng)在性能功能上應(yīng)達(dá)到如下需求:(1) 操作簡(jiǎn)單、界面友好:完全控件式的頁面布局,使得菜品、在線留言、餐廳營(yíng)養(yǎng)、等信息的錄入更簡(jiǎn)便,許多選項(xiàng)包括餐廳營(yíng)養(yǎng)、查看用戶信息、訂餐、等功能只需要點(diǎn)擊鼠標(biāo)就可以完成;另外,跟蹤出現(xiàn)的提示信息也讓用戶隨時(shí)清楚自己的操作情況。對(duì)常見的類似網(wǎng)站的管理的各個(gè)方面:用戶基本信息錄入、瀏覽、刪除、修改、搜索等方面都大體實(shí)現(xiàn),用戶對(duì)菜品的預(yù)訂及支付方式。(2) 即時(shí)可見:對(duì)用戶預(yù)訂菜品的處理(包括錄入、刪除)將立即在主頁的對(duì)應(yīng)欄目顯示出來,達(dá)到“即時(shí)發(fā)布、即時(shí)見效”的功能。(3) 系統(tǒng)運(yùn)行應(yīng)該快速、穩(wěn)定、高效和可靠。(4) 在結(jié)構(gòu)上應(yīng)具有很好的可擴(kuò)展性,便于將來的功能擴(kuò)展和維護(hù)。3.5.2 功能分析本系統(tǒng)分為前臺(tái)和后臺(tái)兩個(gè)部分,主要是實(shí)現(xiàn)網(wǎng)上瀏覽菜品、訂餐、產(chǎn)生訂單、管理菜品、訂單管理等功能的系統(tǒng)。對(duì)于本系統(tǒng)的不同使用者,其功能與業(yè)務(wù)邏輯是不盡相同的。前臺(tái)部分主要是用戶進(jìn)行信息的瀏覽,以及訂餐等,主要是面向用戶的。需要實(shí)現(xiàn)瀏覽菜品信息、用戶信息注冊(cè)、用戶信息修改、訂餐、訂餐車、在線留言等模塊。需要完成的主要任務(wù)如下: 當(dāng)用戶進(jìn)入網(wǎng)上訂餐系統(tǒng)時(shí),應(yīng)該在主頁面中分類顯示最新的菜品信息、菜品種類、訂餐排行,以供用戶更好地選擇所需菜品,同時(shí)提供按菜品名稱或者菜品種類,快速查詢所需菜品信息的功能。當(dāng)用戶選擇預(yù)訂某個(gè)菜品時(shí),應(yīng)該能夠?qū)?duì)應(yīng)菜品信息記錄到訂餐車中,如:價(jià)格、數(shù)量記錄到對(duì)應(yīng)的訂餐車中,此時(shí)用戶可以選擇其他菜品或是查看自己的訂餐車,最后,在訂餐車中填寫相應(yīng)的送餐信息,提交訂餐訂單后,自動(dòng)清除以生成訂單的訂餐車中的信息。后臺(tái)主要是管理員對(duì)前臺(tái)數(shù)據(jù)的設(shè)置和維護(hù),主要是面向管理員的。需要實(shí)現(xiàn)菜品信息的管理、訂餐車管理、用戶管理、員工管理、留言管理、訂單處理等模塊。需要完成的主要任務(wù)如下: 當(dāng)管理員進(jìn)入網(wǎng)上訂餐后臺(tái)管理系統(tǒng)時(shí),可以對(duì)菜品信息、用戶、員工、留言、訂單等進(jìn)行設(shè)置和維護(hù),如:管理員根據(jù)訂單信息,查看詳細(xì)訂單明細(xì)并根據(jù)實(shí)際情況處理訂餐。4 系統(tǒng)概要設(shè)計(jì)4.1 概要設(shè)計(jì)原則無論哪個(gè)系統(tǒng)都要有自己的設(shè)計(jì)原則。本系統(tǒng)也一樣,主要設(shè)計(jì)原則有12:(1) 開放性、可擴(kuò)充性、可靠性原則開放系統(tǒng)是生產(chǎn)各種計(jì)算機(jī)產(chǎn)品普遍遵循的原則,遵循這種標(biāo)準(zhǔn)的產(chǎn)品都符合一些公共的、可以相互操作的標(biāo)準(zhǔn),能夠融洽的在一起工作。開放系統(tǒng)使得各種類型的網(wǎng)絡(luò)和系統(tǒng)互連簡(jiǎn)單、標(biāo)準(zhǔn)統(tǒng)一,容易擴(kuò)展升級(jí)。從而適應(yīng)廣大用戶需求的多變性和產(chǎn)品的更新?lián)Q代。(2) 良好的用戶操作界面用戶操作界面美觀、方便、實(shí)用,使用戶能在較短的時(shí)間內(nèi)掌握其使用方法。同時(shí)在實(shí)現(xiàn)系統(tǒng)的時(shí)候,盡量讓系統(tǒng)操作簡(jiǎn)單易懂,這對(duì)于一個(gè)系統(tǒng)來說是非常重要的。(3) 實(shí)用性原則任何系統(tǒng)的設(shè)計(jì)都要考慮其實(shí)用性,系統(tǒng)開發(fā)的目的是為了實(shí)現(xiàn)業(yè)務(wù)處理自動(dòng)化、規(guī)范化,提高工作效率,減輕工作人員的勞動(dòng)強(qiáng)度,減少開支。該系統(tǒng)能完成電子菜品展示用戶和管理員管理的基本信息,具有良好的實(shí)用性。(4) 針對(duì)性:該系統(tǒng)設(shè)計(jì)是網(wǎng)上訂餐系統(tǒng)及后臺(tái)管理的定向開發(fā)設(shè)計(jì),所以具有專業(yè)突出和很強(qiáng)的針對(duì)性。(5) 工作平臺(tái)設(shè)計(jì)原則能適應(yīng)不同的操作平臺(tái),不同的網(wǎng)絡(luò)。4.2 系統(tǒng)整體結(jié)構(gòu)根據(jù)上一章的網(wǎng)上訂餐系統(tǒng)需求分析,制訂系統(tǒng)整體結(jié)構(gòu)圖如下:網(wǎng)上訂餐系統(tǒng)前臺(tái)后臺(tái)用戶注冊(cè)與登錄餐廳營(yíng)養(yǎng)信息瀏覽用戶資料與修改菜品瀏覽與搜索訂餐訂餐車在線留言餐廳營(yíng)養(yǎng)信息管理用戶管理員工管理留言管理采購管理訂單管理菜品級(jí)種類管理圖4-1 系統(tǒng)整體結(jié)構(gòu)圖4.3 系統(tǒng)功能設(shè)計(jì)根據(jù)需求分析與系統(tǒng)功能設(shè)計(jì)原則,結(jié)合實(shí)際情況本系統(tǒng)功能模塊設(shè)計(jì)分為如下幾個(gè)模塊:前臺(tái)模塊:(1) 主頁:在這里我們可以看見本系統(tǒng)的主要功能和信息。(2) 餐廳營(yíng)養(yǎng)信息:用戶可以學(xué)到一些與營(yíng)養(yǎng)有關(guān)的知識(shí),從而健康飲食。(3) 用戶注冊(cè):可以注冊(cè)用戶的基本信息,其中密碼、電話和送餐地址是比較重要的,因?yàn)槲覀冃枰獙?duì)這些信息進(jìn)行處理,以方便用戶的付款和餐廳的送餐。(4) 用戶登錄:為了方便用戶的管理和訂餐,我們必須要登錄之后才可以進(jìn)行消費(fèi)或者留言。(5) 菜品瀏覽:成功登錄后的用戶可以瀏覽菜品的詳細(xì)信息,并將想要的菜品提交到訂餐車頁面。如果用戶還沒有注冊(cè)就直接進(jìn)入或者沒有成功登錄就進(jìn)入頁面,只能簡(jiǎn)單的瀏覽菜品,進(jìn)入其他頁面時(shí),系統(tǒng)會(huì)提示:please login!(6) 預(yù)訂菜品:成功登錄的用戶可以在該頁面點(diǎn)擊菜品右下角的“訂餐”按鈕,來預(yù)訂自己所需要的菜品。如果用戶還沒有注冊(cè)就直接進(jìn)入或者沒有成功登錄就進(jìn)入頁面,系統(tǒng)會(huì)提示:please login!(7) 訂餐車:成功登錄的用戶可以在進(jìn)入訂餐車頁面,對(duì)已經(jīng)訂購的菜品進(jìn)行修改或者刪除,也可以通過“繼續(xù)訂餐”按鈕轉(zhuǎn)到訂餐菜品,還可以點(diǎn)擊“收銀臺(tái)”按鈕進(jìn)行付賬。如果用戶還沒有注冊(cè)就直接進(jìn)入或者沒有成功登錄就進(jìn)入頁面,系統(tǒng)會(huì)提示:please login!(8) 菜品搜索:用戶可以在該頁面按照菜品名稱或菜品種類來搜索自己需要的菜品。(9) 找回密碼:用戶如果忘記了自己的登錄密碼,則用郵箱和登錄名可以在該頁修改自己的密碼。(10) 用戶中心:成功登錄的用戶可以在該頁面修改自己當(dāng)初注冊(cè)時(shí)的基本信息。(11) 在線留言:成功登錄的用戶可以在該頁面對(duì)餐廳的各個(gè)方面進(jìn)行評(píng)價(jià),可以讓其他用戶更方便的訂餐。后臺(tái)模塊:(1) 管理員登錄:為了對(duì)餐廳的經(jīng)營(yíng),我們必須要登錄之后對(duì)菜品、用戶、員工、訂單、采購、留言等方面進(jìn)行管理。(2) 菜品管理:管理員可以在該頁面修改或刪除已有的菜品,還可以添加新菜品。在添加菜品時(shí),需要填寫詳細(xì)的菜品信息,例如:菜品名稱、原料、價(jià)格、說明、菜品種類和上傳圖片等等。(3) 菜品種類管理:管理員可以在該頁面修改或刪除已有的菜品種類,還可以添加新菜品種類。(4) 餐廳營(yíng)養(yǎng)管理:管理員可以在該頁面修改或刪除已有的餐廳營(yíng)養(yǎng)信息,還可以添加新餐廳營(yíng)養(yǎng)。(5) 用戶管理:管理員可以在該頁面刪除用戶。(6) 員工管理:管理員可以在該頁面修改和刪除已有的員工,可以按照員工姓名查詢出員工的信息,還可以添加新員工。(7) 留言管理:管理員可以在該頁面刪除用戶的留言。(8) 銷售訂單查詢:管理員可以在該頁面根據(jù)用戶ID、菜品名稱以及訂購數(shù)量來查詢訂單,從而通知餐廳送餐。(9) 統(tǒng)計(jì)管理:管理員可以在該頁面查詢到該月的訂單統(tǒng)計(jì)數(shù)據(jù)和該天訂單的統(tǒng)計(jì)數(shù)據(jù)。(10) 管理員:管理員可以在該頁面修改管理員的登錄密碼和管理員名,還可以添加新的管理員。4.4 數(shù)據(jù)庫設(shè)計(jì)4.4.1 數(shù)據(jù)庫分析在建設(shè)系統(tǒng)之前,我們必須對(duì)系統(tǒng)所用到的數(shù)據(jù)進(jìn)行大致的分類和具體的結(jié)構(gòu)設(shè)計(jì),既要做到清晰明了,又要能適應(yīng)系統(tǒng)各項(xiàng)功能的調(diào)用,而不至于產(chǎn)生結(jié)構(gòu)上的邏輯混亂,保證關(guān)鍵數(shù)據(jù)在意外情況下不會(huì)被破壞,可以說數(shù)據(jù)庫是系統(tǒng)的重中之重13。數(shù)據(jù)庫設(shè)計(jì)要遵循一些規(guī)則,一個(gè)好的數(shù)據(jù)庫滿足一些嚴(yán)格的約束和要求。盡量分離各實(shí)體對(duì)應(yīng)的表,一個(gè)實(shí)體對(duì)應(yīng)一個(gè)表,搞清楚該實(shí)體有哪些屬性,對(duì)應(yīng)有些什么字段,以及各實(shí)體之間有何種聯(lián)系。實(shí)體、屬性與聯(lián)系是進(jìn)行概念設(shè)計(jì)時(shí)要考慮的三個(gè)元素,也是一個(gè)好的數(shù)據(jù)庫設(shè)計(jì)的核心。用戶和管理員的需求具體體現(xiàn)在各種信息的提供、保存、更新和查詢,這就要求數(shù)據(jù)庫結(jié)構(gòu)能充分滿足各種信息的輸入和輸出。收集基本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)處理流程,組成一份詳細(xì)的數(shù)據(jù)字典,為具體設(shè)計(jì)鋪墊。4.4.2 數(shù)據(jù)庫E-R圖E-R圖為實(shí)體-聯(lián)系圖,提供了表示實(shí)體型、屬性和聯(lián)系的方法,用來描述現(xiàn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【培訓(xùn)教材】中醫(yī)外科學(xué)多媒體課件-破傷風(fēng)
- 江西2024年江西青年職業(yè)學(xué)院招聘30人歷年參考題庫(頻考版)含答案解析
- 2024年錦州市中山醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點(diǎn)附帶答案
- 2024年銅陵有色職工總院石城醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點(diǎn)附帶答案
- 2024年重慶長(zhǎng)城醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點(diǎn)附帶答案
- 2024年鐘祥市人民醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點(diǎn)附帶答案
- 新疆2024年新疆醫(yī)科大學(xué)第六附屬醫(yī)院招聘8人歷年參考題庫(頻考版)含答案解析
- 8.2堅(jiān)持國(guó)家利益至上(原卷版)
- 建軍節(jié)講話稿
- 土石方工程管理協(xié)議書(2篇)
- 2024-2025學(xué)年烏魯木齊市數(shù)學(xué)三上期末檢測(cè)試題含解析
- GB 30254-2024高壓三相籠型異步電動(dòng)機(jī)能效限定值及能效等級(jí)
- 生活垃圾填埋場(chǎng)污染控制標(biāo)準(zhǔn)
- 空氣能機(jī)組安裝使用說明
- 監(jiān)控系統(tǒng)自檢報(bào)告
- 工業(yè)機(jī)器人論文
- 代理商授權(quán)書
- 中南財(cái)經(jīng)政法大學(xué)工商管理碩士(MBA)
- 白云國(guó)際機(jī)場(chǎng)航站樓1027火災(zāi)事故
- 正常胃鏡檢查診療報(bào)告單
- 外協(xié)管理制度
評(píng)論
0/150
提交評(píng)論