




已閱讀5頁,還剩38頁未讀, 繼續免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
畢 業 論 文題 目 網上訂餐系統的開發 英文題目 The Development of Online Order System院 系 專 業 姓 名 班級學號 指導教師 二零一二年五月I摘 要在Internet飛速發展的今天,互聯網成為人們快速獲取、發布和傳遞信息的重要渠道,它在人們政治、經濟、生活等各個方面發揮著重要的作用。人們對餐飲的要求也越來越高,不僅要求色香味俱全,而且對于就餐的時間和方式也有了更高的要求。本次畢業設計的題目就是網上訂餐系統。在開發設計中,采用B/S(Browser/Server)結構,這種結構使得數據只有結果集合在瀏覽器中顯示,數據的處理在服務器進行,用戶不用安裝客戶端,而且由于通過服務器端統一管理數據,易于保證數據的一致性。在開發中選擇了JSP+JavaBeans+Mysql的模式,實現了應用程序邏輯和頁面顯示分離,界面設計更簡單。本畢業設計的內容,系統地闡述了整個網絡訂餐系統的功能及實現。實現了從菜品管理,菜品分類和查詢,到訂餐車實現,用戶訂單處理,再到系統管理?;旧蠈崿F了網上訂餐的功能流程,能夠實現用戶與餐廳在網上進行訂餐交易。本系統界面簡單直觀,易于操作和使用,交互性強,完全基于Internet網絡。關鍵詞:網上訂餐系統 B/S結構 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 系統概要11.1 課題的來源及其意義11.2 系統開發設計思想11.3 系統運行環境11.4 系統開發設計目的22 開發環境、工具和主要技術32.1 開發環境的配置32.2 開發工具42.3 主要技術53 系統需求分析123.1 開發語言分析123.2 可行性分析133.3 系統體系結構分析143.4 需求分析143.5 功能需求分析154 系統概要設計174.1 概要設計原則174.2 系統整體結構174.3 系統功能設計184.4 數據庫設計205 系統詳細設計255.1 系統流程255.2 主要功能模塊的實現296 系統測試346.1 測試目標346.2 測試方法346.3 部分測試結果與解決方法346.4 測試總結35參 考 文 獻36致 謝37371 系統概要1.1 課題的來源及其意義隨著現代科學技術的不斷提高,現今的生活節奏加快,人們的生活也與傳統的生活模式有很大的不同。其中互聯網在人們的生活中得到了廣泛的應用,現在足不出戶,就能獲得自己需要的菜品和服務。人們對餐飲的要求也越來越高,不僅要求色香味俱全,而且對于就餐的時間和方式也有了更高的要求,許多顧客由于工作繁忙無法抽出時間來享受美味,一般是不愿自己去吃飯的,他們寧愿訂餐,尤其是一些白領。另外有很多的大學生在寢室里,不愿下寢室去吃飯,所以他們其中有很多的人喜歡訂餐。這時候他們必須有一個平臺來提供他們一些信息,網上訂餐系統就可以方便地為他們提供詳細的信息查詢。網上訂餐系統開發是為了更好地適應市場需求,緩解餐廳的地域限制,為消費者節省時間和精力、并實現更便捷的交易方式。通過網上訂餐系統使用戶可以足不出戶就能在網上進行瀏覽菜品介紹、點菜訂餐,使管理人員快速方便的管理用戶、訂單以及菜單資料的維護,這樣使得訂餐變得更方便。1.2 系統開發設計思想該系統是基于B/S(瀏覽器/服務器)模式實現,基于MyEclipse集成開發環境平臺架構開發設計。使用Java語言中的JSP技術和Mysql數據庫開發,通過編寫JavaBeans來進行后臺業務邏輯控制,主要實現對網上訂餐的使用、需求、以及用戶訂餐的動態管理等。使得網上訂餐的管理更加及時、高效,提高了工作效率。該系統主要包括菜品管理,餐飲管理,預訂管理,用戶管理等幾個大的功能模塊。1.3 系統運行環境操作系統:Windows XP數據庫:Mysql網絡通信協議:TCP/IP支持軟件:Tomcat,MyEclipse1.4 系統開發設計目的通過本次系統開發設計,可以更熟練掌握JSP的基礎知識,會用JSP連接數據庫,本次系統開發設計的難點是連接Mysql數據庫及學會用MyEclipse開發Web項目工程的基本方法。另外,通過寫畢業論文,掌握學術論文寫作的基本格式,獲得技術和理論上的提升。達到的目的主要有:(1) 掌握在MyEclipse集成開發環境中開發JSP工程的基本用法;(2) 熟悉Java語言;(3) 掌握JSP中連接數據庫的基本步驟;(4) 掌握JSP +JavaBeans + Mysql三層模式設計方法;(5) 提高綜合技能。2 開發環境、工具和主要技術2.1 開發環境的配置本系統是在 Windows XP操作系統下,使用JDK1.6和Tomcat6.0做為Java的解析運行環境,進行開發的。2.1.1 JDK1.6JDK(Java Development Kit)是Sun Microsystems針對Java開發員的產品。自從Java推出以來,JDK已經成為使用最廣泛的Java SDK。JDK 是整個Java的核心,包括了Java運行環境,Java工具和Java基礎的類庫。JDK是學好Java的第一步。所以Jdk1.6是Java運行的必須環境,在進行所有的開發之前,這個是必須的。按照JDK的提示來安裝,安裝完之后設置環境變量。 JDK環境變量配置的步驟如下: (1) 我的電腦-屬性-高級-環境變量。 (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) 測試環境變量配置是否成功開始-運行-cmd;鍵盤敲入: javac、java;出現相應的命令,而不是出錯信息,即表示配置成功! 2.1.2 Tomcat6.0服務器Tomcat是一個免費的開源的Servlet容器,它是Apache基金會的Jakarta項目中的一個核心項目,由Apache、Sun等公司共同開發而成。由于有了Sun的參與和支持,最新的Servlet和JSP規范能在Tomcat中得到體現。Tomcat 很受廣大程序員的喜歡,因為它運行時占用的系統資源小,擴展性好,支持負載平衡與郵件服務等開發應用系統常用的功能;而且它還在不斷的改進和完善中,任何一個感興趣的程序員都可以更改它或在其中加入新的功能。Tomcat 是一個輕量級應用服務器,在中小型系統和并發訪問用戶不是很多的場合下被普遍使用,是開發和調試JSP 程序的首選。對于一個初學者來說,可以這樣認為,當在一臺機器上配置好Apache 服務器,可利用它響應對HTML 頁面的訪問請求。實際上Tomcat 部分是Apache 服務器的擴展,但它是獨立運行的,所以當運行Tomcat 時,它實際上作為一個與Apache 獨立的進程單獨運行的。1 2.2 開發工具本系統使用的開發工具主要有:MyEclipse6.0、Mysql5.0、Photoshop CS4。2.2.1 MyEclipse簡介MyEclipse企業級工作平臺(MyEclipse Enterprise Workbench ,簡稱MyEclipse)是對Eclipse IDE的擴展,利用它我們可以在數據庫和JavaEE的開發、發布以及應用程序服務器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發環境,包括了完備的編碼、調試、測試和發布功能,完整支持HTML、CSS、Javascript、Struts、Spring、Hibernate、JSP、Tomcat、Mysql。MyEclipse結構上的這種模塊化,可以讓我們在不影響其他模塊的情況下,對任一模塊進行單獨的擴展和升級。簡單而言,MyEclipse是Eclipse的插件,也是一款功能強大的JavaEE集成開發環境,支持代碼編寫、配置、測試以及除錯。2.2.2 Mysql簡介Mysql是一種小型關系型數據庫管理系統,開發者為瑞典Mysql AB公司。Mysql是一種關系數據庫管理系統,關聯數據庫將數據保存在不同的表中,而不是將所有數據放在一個大倉庫內。這樣就增加了速度并提高了靈活性。Mysql的SQL“結構化查詢語句”。SQL是用于訪問數據庫的最常用標準化語言。Mysql軟件采用了GPL。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網站為了降低網站總體擁有成本而選擇了Mysql作為網站數據庫。Mysql的特性:(1) 性能快捷、優化SQL語言(2) 容易使用、開放源代碼(3) 支持多線程,充分利用CPU資源(4) 可移植性和可靠性(5) 遵循國際標準和國際化支持(6) 為多種編程語言提供API2.2.3 Photoshop簡介Photoshop是Adobe公司旗下開發的一個跨平臺的平面圖像處理軟件,是專業設計人員的首選軟件。集圖像掃描、編輯修改、圖像制作、廣告創意,圖像輸入與輸出于一體的圖形圖像處理軟件,深受廣大平面設計人員和電腦美術愛好者的喜愛。應用領域:主要應用于平面設計、網頁設計、數碼暗房、建筑效果圖后期處理以及影像創意等。2.3 主要技術2.3.1 Java簡介Java是一種可以撰寫跨平臺應用軟件的面向對象的程序設計語言,是由Sun Microsystems公司于1995年5月推出的Java程序設計語言和Java平臺(即JavaSE、 JavaEE、JavaME)的總稱。它繼承了 C+ 語言面向對象技術的核心,Java舍棄了C +語言中容易引起錯誤的指針(以引用取代)、運算符重載(operator overloading)、多重繼承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的對象所占據的內存空間,使得程序員不用再為內存管理而擔憂。在 Java SE 1.5 版本中,Java 又引入了泛型編程(Generic Programming)、類型安全的枚舉、不定長參數和自動裝/拆箱等語言特性。Java 不同于一般的編譯執行計算機語言和解釋執行計算機語言。它首先將源代碼編譯成二進制字節碼(bytecode),然后依賴各種不同平臺上的虛擬機來解釋執行字節碼,從而實現了“一次編譯、到處執行”的跨平臺特性。Java是一種程序設計平臺,既是開發環境,又是應用環境。也是一種編程語言,面向對象的程序設計語言,提供了編譯、運行和調試工具。還是一種軟件平臺,平臺是程序運行的硬件或軟件環境,Java平臺與大多數其它平臺不同,是基于其它軟件或硬件的純軟件平臺。Java語言以其完全面向對象、簡單高效、與平臺無關、支持多線程、網絡安全性、嵌入瀏覽器運行、健壯性、豐富的類庫等特點,已成為計算機網絡編程的主流工具。 Java的核心機制:(1) Java虛擬機(Java Virtual Machine 簡稱JVM)JVM并不是真正的機器,它是用來定義Java字節代碼在給定的計算機系統中如何被處理的一組規范,Java程序可以在具有虛擬機的任何計算機上運行。JVM可以理解成一個以字節碼為機器指令的CPU。對于不同的運行平臺,有不同的虛擬機。JVM機制屏蔽了底層運行平臺的差別,實現了“一次編譯,隨處運行”。JVM提供了跨平臺能力的基礎框架,是程序在多個平臺之間進行無縫移植的可靠保證,也是Java程序的安全檢驗引擎。編譯后的Java程序指令并不直接在硬件系統的CPU上執行,而是由JVM執行。(2) 垃圾回收器(Garbage Collection)Java系統不僅要分配對象所用的內存資源,還需要跟蹤資源的使用情況,定期檢測出不再使用的內存,由系統自動回收并做再次分配。在Java程序中不用考慮對象釋放的問題,因為Java提供了后臺系統級線程,記錄每次內存分配的情況,并統計每個內存的引用次數,在Java虛擬機運行時環境閑置時,垃圾收集線程將檢查是否存在引用次數為 0的內存,若有則釋放該內存。 (3) 代碼安全性檢測Java Applet是從其他機器上下載到本機執行的,在 Applet運行之前,系統要對之進行嚴格的三級代碼安全檢查,即驗證、分析和跟蹤監測。 2.3.2 JSP簡介 JSP技術簡介JSP(Java Server Page服務器網頁)是從1998年開始出現的新技術。由Sun公司倡導、許多公司參與一起建立的一種動態網頁技術標準,是基于JavaServlet以及整個Java體系的Web開發技術。在傳統的網頁HTML文件(*.htm,*.html)中加入腳本片段和JSP標記(Tag),構成JSP網頁(*.jsp)。JSP技術為創建顯示動態生成內容的Web頁面提供了簡便的方法。JSP作為Java家族的一員,承襲了Java的特點,即跨平臺的特性,也即一次編譯,到處運行?,F在大量使用JSP作為網絡應用程序的開發工具,盡管JSP還不是主流開發技術,但是由于JSP的強大優勢,許多網站都已經準備轉向JSP,利用JSP來開發動態網站。 JSP工作原理JSP是面向服務器的,因此支持任何瀏覽器。當Web服務器和JSP引擎遇到訪問JSP網頁的請求時,JSP引擎將請求對象發送給服務器端的相關組件,比如JavaBeans組件、Servlet或EJB等,然后由服務端組件處理這些請示,可能需要從數據庫或數據存儲中檢索信息,然后服務端組件再將響應對象返回JSP引擎。JSP引擎將響應對象傳遞給JSP頁面,根據JSP頁面的HTML格式完成數據編排,最后Web服務器和JSP引擎將格式化后的JSP頁面以HTML格式返回用戶瀏覽器。這就是當前網站構建中廣泛采用的瀏覽器Web服務器后臺數據庫的三層架構模式。因為JSP所有程序操作都在服務端執行,網絡上傳送給用戶端的僅是得到的結果。 JSP體系結構JSP有兩種開發模式技術,即是JSP+JavaBeans和JSP+Servlet+JavaBeans。模式一:JSP+JavaBeans技術,JSP頁面獨自響應請求并將處理結果返回用戶。所有的數據通過Bean來處理JSP實現頁面的表現。這種模式技術實現了頁面的表現和頁面的商業邏輯相分離。大量使用這種模式形式,常常會導致頁面被嵌入大量的腳本語言或Java代碼。當需要處理的商業邏輯很復雜時,這種情況會變得非常糟糕。大量的代碼會使整個頁面變得常復雜。對于前端界面設計人員來說,這簡直不可想象。這種情況在大項目中最為常見,這也造成了代碼的開發和維護出現困難,造成了不必要的資源浪費,在任何項目中,這樣的模式總會導致多多少少的定義不清的響應和項目管理的困難。 綜上所訴,模式一不能滿足大型項目的需要,但是可以較好的滿足小型應用,在簡單的應用中可以考慮模式一。模式二:JSP+Servlet+JavaBeans技術,其中Servlets技術是一種采用Java技術來實現CGI功能的一種術。Servlets技術是運行在Web服務器上,用來生成Web頁面。Servlets技術非常實用于服務器端的處理和編程,并且Servlet會長期駐留在他們所處的位置。 但是在實際的項目開發過程中,頁面設計者可以方便地使用普通HTML工具來開發JSP頁面,Servlet卻更適合于后端開發者使用,開發Servlet需要的是Java集成開發環境,也就是說Servlet技術更需要編程人員。 這種模式技術結合了JSP和Servlet技術充分體現了兩者的技術優點2。在這種模式中通過JSP來表現頁面。通過Servlet來完成大量的事務處理。 Servlet充當一個控制者的角色,并負責向用戶發送請求。Servlet創建JSP所需要的Bean和對象,然后根據用戶的請求行為,決定將哪個JSP頁面發送給用戶。 從開發的觀點,模式二具有更清晰的頁面表現,清楚的開發者角色劃分,可以充分利用開發小組的界面設計人員,這些優勢在大型項目開發中表現的尤為突出,使用這一模式,可以充分發揮每個開發者各自的特長,界面設計人員可以充分發揮自己的表現力,設計出優美的界面表現形式,設計人員可以充分發揮自己的商務處理思維,來實現項目中的業務處理。在大型項目中,這種模式更被采用。但是,本系統開發只是一個小型的JSP應用,同時由于Servlet難于掌握,所以在本課題中采用了模式一開發,既JSP+JavaBeans。 JSP的特點3(1) 簡化的頁面生成技術。JSP頁面用標準的HTML或XML命令來處理頁面的格式化和布局設計,而用類似HTML、XML的標記和Java語言編寫的腳本程序生成頁面內容。這使得頁面形式與頁面內容互相獨立,非常有利于大型項目的分工合作。(2) 與Java平臺有機集成。JSP技術是Java 2平臺的重要組成部分,JSP使用Java語言作為它的腳本語言。在JSP頁面中可以使用幾乎所有的Java組件和Java API,這就能充分發揮出Java語言的強大功能。使用JSP技術可以創建具有高度可伸縮性和可靠性的Web應用程序。(3) 硬件平臺和服務器無關性。JSP作為Java家族的一員,秉承了Java技術的“一次編寫,到處運行(Write Once,Rum Anywhere)”的特性,可以運行于大多數流行的操作系統平臺及Web服務器,這種與服務器硬件和操作系統平臺的無關性是JSP相對于其它動態網頁技術最大的一個優點。(4) 功能可擴展性。JSP技術可以通過ActiveX/COM組件來擴展功能,JSP可以通過JavaBeans和EJB(Enterprise JavaBeans)以及自定義的標記來擴展功能。JSP可以通過JDBC,與諸如Oracle、Mysql這樣的關系數據庫進行連接。JSP提供了一些隱含對象。這些隱含對象在JSP頁面中可以直接引用,而不必首先聲明。利用JSP提供的這些隱含對象,可以使腳本功能更加強大,并且編程更加容易、方便。例如,利用request對象,可以很容易地接收用戶在HTML表單中提交的信息。42.3.3 JavaBeans簡介JavaBeans被稱為是Java組件技術的核心。JavaBeans的結構必須滿足一定的命名約定。JavaBeans能提供常用功能并且可以重復使用。JavaBeans可以在JSP程序中應用給我們帶來了很大的方便,這使得開發人員可以把某些關鍵功能和核心算法提取出來,封裝成為一個組件對象,增加了代碼的重用率、系統的安全性。比如我們可以將訪問數據庫的功能、數據處理功能編寫封裝為JavaBeans組件,然后在某個JSP程序中加以調用。JavaBeans技術有著很大的優越性,例如JavaBeans的與平臺無關性,使得JavaBeans組件不但可以運行于Unix平臺,還可以運行在Windows平臺下面,而且JavaBeans從一個平臺移植到另外的平臺上代碼不需要修改,甚至不需要重新編譯。另一方面JavaBeans容易編寫,用起來也方便得多。JavaBeans組件要想在JSP程序中使用JavaBeans,組件必須應用等JSP的操作指令。JavaBeans描述了Java的軟件組件模型,應用程序開發者把JavaBeans組件拖放到集成開發環境的工具箱中,再將其應用于應用軟件的開發,對于JavaBeans組件的屬性、行為可以進行必要的修改、測試和修訂而不必重新編寫和編譯程序。在JavaBeans模型中JavaBeans組件可以被修改或者與其他JavaBeans組件組合以生成新的JavaBeans組件或完整的Java應用程序。每個JavaBeans組件都包含了一組屬性、操作和事件處理器。將若干個JavaBeans組件組合起來就可以生成開發者所需要的特定運行行為,JavaBeans組件存放于容器或工具庫中,供開發者開發應用程序5。 JavaBeans就是一個可以復用軟件模型。JavaBeans在某個容器中運行提供具體的操作性能。JavaBeans是建立應用程序的建筑模塊。大多數常用的JavaBeans通常是中小型控制程序,但我們也可以編寫包裝整個應用程序運行邏輯的JavaBeans組件,并將其嵌入到復合文檔中,以便實現更為復雜的功能。 一般來說JavaBeans可以表示為簡單的GUI組件,可以是按鈕組件、游標、菜單等等。這些簡單的JavaBeans組件提供了告訴用戶什么是JavaBeans的直觀方法。但我們也可以編寫一些不可見的JavaBeans,用于接受事件和在幕后工作,例如訪問數據庫執行查詢操作的,JavaBeans它們在運行時刻不需要任何可視的界面。62.3.4 JDBC簡介JDBC(Java Data Base Connectivity,Java數據庫連接)是一種用于執行SQL語句的Java API,可以為多種關系數據庫提供統一訪問,它由一組用Java語言編寫的類和接口組成。JDBC為工具/數據庫開發人員提供了一個標準的API,據此可以構建更高級的工具和接口,使數據庫開發人員能夠用純 Java API 編寫數據庫應用程序。通過這些類和接口,程序開發人員可以在Java語言中方便地建立與數據庫的鏈接,通過執行相應SQL語句,完成對不同數據庫的訪問。因此,開發人員使用JDBC API可以不必編寫一個應用程序去訪問Oracle數據庫,再寫一個應用程序訪問的Mysql數據庫。不但如此,使用Java語言編寫的應用程序可以在任何支持Java的平臺上運行,不必在不同的平臺上開發不同的應用程序。下面結合代碼來簡單描述一下在Java中使用JDBC的基本步驟7:(以連接Mysql數據庫、數據庫名為jiang、表名為user為例)(1) 注冊驅動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) 創建語句Statement st = conn.createStatement();(4) 執行語句ResultSet rs = st.executeQuery(select * from user);(5) 處理結果while (rs.next() /參數中的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 系統需求分析3.1 開發語言分析隨著互聯網技術的不斷發展,基于瀏覽器/服務器(Browser/Server 簡稱B/S)體系結構的應用程序得到了空前廣泛的應用。但是服務器之間的通訊,尤其是在不同平臺上運行的服務器之間的通訊仍然不是一件容易的事情。因為大多數Internet應用程序都是以數據庫為中心的,方便的訪問多種數據源的能力也比以往任何時候都更加重要。JSP無疑可以輕松地實現這類功能,JSP技術是一種服務器端的HTML頁面中嵌入Java代碼的腳本語言,它比一般腳本語言的執行速度更快,由于JSP是基于Java語言的,所以它可以運行在UNIX/LINUX和WINDOWS平臺上,是一種難得的動態網頁開發語言8。在動態內容的解決問題中,還存在其他的解決方法,但是開發人員要掌握這些技術很難。例如,Java Servlets這樣的技術就可以使得用Java語言編寫交互式的應用程序的服務器端的代碼變得更加簡單。Java Servlets就是一個基于Java技術的運行在服務器端的程序(與Applet不同,后者運行在瀏覽器端)。開發人員編寫出Servlet程序,用來接收來自Web瀏覽器的HTTP請求,動態地生成響應,然后發送包含HTML或XML文檔到瀏覽器。但是使用這種方法,整個網頁必須都在Java Servlet中制作。如果開發人員或者Web管理人員想要調整頁面的顯示,就不得不從新編輯并編譯Java Servlet程序。采用這種方法,編寫帶有動態內容的頁面需要有很熟練的應用程序開發技巧和經驗。很顯然,一個簡單的創建動態頁面的解決方案要能解決以下的問題: (1) 能夠在任何Web或應用程序服務器上運行(2) 將應用程序邏輯和頁面顯示分離(3) 能夠快速地開發和測試(4) 簡化開發基于Web的交互式應用程序的過程JSP滿足這些要求,它整合了存在的Java編程環境提供支持的技術和工具,產生了一種新的、開發基于Web應用程序的方法,這個方法給予使用基于組件應用的邏輯頁面的設計者提供了強大的功能9。3.2 可行性分析隨著經濟的快速發展,電子商務越來越受到人們的關注。訂餐類網站,已如雨后春筍般的出現在了個大城市。當代大學生與白領工作人士作為社會中的重要群體,他們對飲食的要求都在不斷提高,飲食在他們生活中起著重要作用。因此,面向大學生與都市白領人士的網上訂餐系統的設計有著良好的現實意義??尚行匝芯侩A段的主要任務是在系統初步調查的基礎上,對新系統是否能夠實現和值得實現等問題做出判斷,避免在花費了大量的人力和物力之后才發現系統不能實現或新系統投入使用后沒有任何實際意義而引起的浪費,對新系統可行性的分析,要求用最小的代價在盡量短的時間內確定系統是否可行。103.2.1 技術可行性分析網絡訂餐系統的開發是一項復雜的系統工程。為了保證系統開發成功,必須采用工程化的系統開發方法,并研究出一些符合工程化標準的開發方法。這些方法旨在指導開發者進行工程化的系統開發,從而加快系統開發的速度,保證質量以及降低開發成本。工程化的系統開發方法確實在開發實踐中取得了一定的效果。此次開發使用JSP作為開發語言,采用Servlet技術,Tomcat5.0作為Web服務器。3.2.2 運行可行性分析隨著計算機知識的普及和推廣,越來越多的人掌握了計算機的基本使用方法和技能。隨著Internet的發展,用戶對于網絡、WINDOWS等環境下的軟件使用比較熟悉,對于新鮮事物,用戶表現出極大的興趣和熱情。 3.2.3 經濟可行性分析網絡訂餐系統給人們帶來了方便,成為一種全新的商務模式。就本系統而言,隨著電腦的普及,為學生在網絡上進行訂餐提供有利的條件。而一個網絡訂餐系統可以為學生提供軟件條件,這樣學生便可以足不出戶的買菜品了。3.2.4 法律可行性該平臺是作為畢業設計與商業無關,也是自主開發設計,不會構成侵權,在法律上是可行的。因此,不用出門就可以在家訂餐的新時尚已經到來,商家可以從中獲得利潤,兩全其美。構建一個網絡訂餐系統在經濟上是完全可行的。3.3 系統體系結構分析B/S體系結構,即Browser/Server(瀏覽器/服務器)結構。在這種體系結構下,用戶通過瀏覽器向分布在網絡上的許多服務器發出請求,服務器對瀏覽器的請求進行處理,將用戶所需信息返回到瀏覽器。B/S結構簡化了用戶端的工作,用戶機上只需配置少量的用戶端軟件。服務器將擔負更多的工作,對數據庫的訪問和應用程序的執行將在服務器上完成。瀏覽器發出請求,而其余如數據請求、加工、結果返回以及動態網頁生成等工作全部由Web Server完成。用戶界面完全通過WWW瀏覽器實現,一部分事務邏輯在前端實現,但是主要事務邏輯在服務器端實現,形成所謂三層結構。這種三層體系結構如圖3-1所示。 Browse瀏覽器Web服務器 數據庫圖3-1 B/S三層架構示意圖這種結構在層與層之間相互獨立,任何一層的改變不會影響其它層的功能。綜上所述,我們可以得出這樣的結論:采用統一的B/S體系結構開發的產品是最好的選擇,本系統也是選擇B/S結構。3.4 需求分析需求分析的任務是通過詳細調查現實世界要處理的對象,充分了解系統的工作概況,明確用戶的各種需求,然后在此基礎上確定新系統的功能。新系統必須充分考慮今后可能的擴充和改變11。網上訂餐管理系統無論是在應用的深度還是廣度都是一個逐步發展的過程。在開發一個局部系統時要充分考慮到局部系統和整個目標系統之間的相容性和完整性,以利于今后整個系統的建立。在具體的設計實現上我們圍繞著兩個方面的需求展開,即用戶和管理員。3.4.1 用戶需求用戶可以通過訪問該網上訂餐系統,進行注冊或登錄、查看或修改該用戶的信息、修改用戶的登錄密碼;也可以瀏覽或搜索菜品信息、在線留言、訂購并獲得想要的各種菜品。3.4.2 管理員需求管理員可以查看用戶菜品,并可以對菜品以及菜品種類進行增刪改查;還可以對用戶、員工、訂單、采購材料、在線留言進行系統性的管理。3.5 功能需求分析3.5.1 功能分析原則該系統在性能功能上應達到如下需求:(1) 操作簡單、界面友好:完全控件式的頁面布局,使得菜品、在線留言、餐廳營養、等信息的錄入更簡便,許多選項包括餐廳營養、查看用戶信息、訂餐、等功能只需要點擊鼠標就可以完成;另外,跟蹤出現的提示信息也讓用戶隨時清楚自己的操作情況。對常見的類似網站的管理的各個方面:用戶基本信息錄入、瀏覽、刪除、修改、搜索等方面都大體實現,用戶對菜品的預訂及支付方式。(2) 即時可見:對用戶預訂菜品的處理(包括錄入、刪除)將立即在主頁的對應欄目顯示出來,達到“即時發布、即時見效”的功能。(3) 系統運行應該快速、穩定、高效和可靠。(4) 在結構上應具有很好的可擴展性,便于將來的功能擴展和維護。3.5.2 功能分析本系統分為前臺和后臺兩個部分,主要是實現網上瀏覽菜品、訂餐、產生訂單、管理菜品、訂單管理等功能的系統。對于本系統的不同使用者,其功能與業務邏輯是不盡相同的。前臺部分主要是用戶進行信息的瀏覽,以及訂餐等,主要是面向用戶的。需要實現瀏覽菜品信息、用戶信息注冊、用戶信息修改、訂餐、訂餐車、在線留言等模塊。需要完成的主要任務如下: 當用戶進入網上訂餐系統時,應該在主頁面中分類顯示最新的菜品信息、菜品種類、訂餐排行,以供用戶更好地選擇所需菜品,同時提供按菜品名稱或者菜品種類,快速查詢所需菜品信息的功能。當用戶選擇預訂某個菜品時,應該能夠將對應菜品信息記錄到訂餐車中,如:價格、數量記錄到對應的訂餐車中,此時用戶可以選擇其他菜品或是查看自己的訂餐車,最后,在訂餐車中填寫相應的送餐信息,提交訂餐訂單后,自動清除以生成訂單的訂餐車中的信息。后臺主要是管理員對前臺數據的設置和維護,主要是面向管理員的。需要實現菜品信息的管理、訂餐車管理、用戶管理、員工管理、留言管理、訂單處理等模塊。需要完成的主要任務如下: 當管理員進入網上訂餐后臺管理系統時,可以對菜品信息、用戶、員工、留言、訂單等進行設置和維護,如:管理員根據訂單信息,查看詳細訂單明細并根據實際情況處理訂餐。4 系統概要設計4.1 概要設計原則無論哪個系統都要有自己的設計原則。本系統也一樣,主要設計原則有12:(1) 開放性、可擴充性、可靠性原則開放系統是生產各種計算機產品普遍遵循的原則,遵循這種標準的產品都符合一些公共的、可以相互操作的標準,能夠融洽的在一起工作。開放系統使得各種類型的網絡和系統互連簡單、標準統一,容易擴展升級。從而適應廣大用戶需求的多變性和產品的更新換代。(2) 良好的用戶操作界面用戶操作界面美觀、方便、實用,使用戶能在較短的時間內掌握其使用方法。同時在實現系統的時候,盡量讓系統操作簡單易懂,這對于一個系統來說是非常重要的。(3) 實用性原則任何系統的設計都要考慮其實用性,系統開發的目的是為了實現業務處理自動化、規范化,提高工作效率,減輕工作人員的勞動強度,減少開支。該系統能完成電子菜品展示用戶和管理員管理的基本信息,具有良好的實用性。(4) 針對性:該系統設計是網上訂餐系統及后臺管理的定向開發設計,所以具有專業突出和很強的針對性。(5) 工作平臺設計原則能適應不同的操作平臺,不同的網絡。4.2 系統整體結構根據上一章的網上訂餐系統需求分析,制訂系統整體結構圖如下:網上訂餐系統前臺后臺用戶注冊與登錄餐廳營養信息瀏覽用戶資料與修改菜品瀏覽與搜索訂餐訂餐車在線留言餐廳營養信息管理用戶管理員工管理留言管理采購管理訂單管理菜品級種類管理圖4-1 系統整體結構圖4.3 系統功能設計根據需求分析與系統功能設計原則,結合實際情況本系統功能模塊設計分為如下幾個模塊:前臺模塊:(1) 主頁:在這里我們可以看見本系統的主要功能和信息。(2) 餐廳營養信息:用戶可以學到一些與營養有關的知識,從而健康飲食。(3) 用戶注冊:可以注冊用戶的基本信息,其中密碼、電話和送餐地址是比較重要的,因為我們需要對這些信息進行處理,以方便用戶的付款和餐廳的送餐。(4) 用戶登錄:為了方便用戶的管理和訂餐,我們必須要登錄之后才可以進行消費或者留言。(5) 菜品瀏覽:成功登錄后的用戶可以瀏覽菜品的詳細信息,并將想要的菜品提交到訂餐車頁面。如果用戶還沒有注冊就直接進入或者沒有成功登錄就進入頁面,只能簡單的瀏覽菜品,進入其他頁面時,系統會提示:please login!(6) 預訂菜品:成功登錄的用戶可以在該頁面點擊菜品右下角的“訂餐”按鈕,來預訂自己所需要的菜品。如果用戶還沒有注冊就直接進入或者沒有成功登錄就進入頁面,系統會提示:please login!(7) 訂餐車:成功登錄的用戶可以在進入訂餐車頁面,對已經訂購的菜品進行修改或者刪除,也可以通過“繼續訂餐”按鈕轉到訂餐菜品,還可以點擊“收銀臺”按鈕進行付賬。如果用戶還沒有注冊就直接進入或者沒有成功登錄就進入頁面,系統會提示:please login!(8) 菜品搜索:用戶可以在該頁面按照菜品名稱或菜品種類來搜索自己需要的菜品。(9) 找回密碼:用戶如果忘記了自己的登錄密碼,則用郵箱和登錄名可以在該頁修改自己的密碼。(10) 用戶中心:成功登錄的用戶可以在該頁面修改自己當初注冊時的基本信息。(11) 在線留言:成功登錄的用戶可以在該頁面對餐廳的各個方面進行評價,可以讓其他用戶更方便的訂餐。后臺模塊:(1) 管理員登錄:為了對餐廳的經營,我們必須要登錄之后對菜品、用戶、員工、訂單、采購、留言等方面進行管理。(2) 菜品管理:管理員可以在該頁面修改或刪除已有的菜品,還可以添加新菜品。在添加菜品時,需要填寫詳細的菜品信息,例如:菜品名稱、原料、價格、說明、菜品種類和上傳圖片等等。(3) 菜品種類管理:管理員可以在該頁面修改或刪除已有的菜品種類,還可以添加新菜品種類。(4) 餐廳營養管理:管理員可以在該頁面修改或刪除已有的餐廳營養信息,還可以添加新餐廳營養。(5) 用戶管理:管理員可以在該頁面刪除用戶。(6) 員工管理:管理員可以在該頁面修改和刪除已有的員工,可以按照員工姓名查詢出員工的信息,還可以添加新員工。(7) 留言管理:管理員可以在該頁面刪除用戶的留言。(8) 銷售訂單查詢:管理員可以在該頁面根據用戶ID、菜品名稱以及訂購數量來查詢訂單,從而通知餐廳送餐。(9) 統計管理:管理員可以在該頁面查詢到該月的訂單統計數據和該天訂單的統計數據。(10) 管理員:管理員可以在該頁面修改管理員的登錄密碼和管理員名,還可以添加新的管理員。4.4 數據庫設計4.4.1 數據庫分析在建設系統之前,我們必須對系統所用到的數據進行大致的分類和具體的結構設計,既要做到清晰明了,又要能適應系統各項功能的調用,而不至于產生結構上的邏輯混亂,保證關鍵數據在意外情況下不會被破壞,可以說數據庫是系統的重中之重13。數據庫設計要遵循一些規則,一個好的數據庫滿足一些嚴格的約束和要求。盡量分離各實體對應的表,一個實體對應一個表,搞清楚該實體有哪些屬性,對應有些什么字段,以及各實體之間有何種聯系。實體、屬性與聯系是進行概念設計時要考慮的三個元素,也是一個好的數據庫設計的核心。用戶和管理員的需求具體體現在各種信息的提供、保存、更新和查詢,這就要求數據庫結構能充分滿足各種信息的輸入和輸出。收集基本數據、數據結構以及數據處理流程,組成一份詳細的數據字典,為具體設計鋪墊。4.4.2 數據庫E-R圖E-R圖為實體-聯系圖,提供了表示實體型、屬性和聯系的方法,用來描述現
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 漁業捕撈權轉讓合同
- 高端酒店客房預訂管理軟件開發協議
- 中小學校道德領導的定義與內涵探討
- 《數學幾何深化:空間幾何與解析幾何教學》
- 網絡內容審核與管理規范
- 醫學影像學放射影像解讀知識考點
- 資源消耗一資源消耗統計表格
- 力學概念入門:高中物理力學課程教案
- 供應鏈管理績效評估表(年度)
- 建筑學建筑構造專項知識考核點
- 廣州市律師協會申請律師執業人員面試考核參考題庫
- 數據治理培訓資料
- 裂解裂化工藝培訓課件
- 小學語文現代文閱讀課件
- 建筑裝飾裝修工程消耗量定額
- 上海寶冶公司介紹
- 【大數據背景下湯臣倍健公司物流成本管理8900字(論文)】
- 分餾塔構造教程課件
- 《勞動法案例》課件
- 安全教育培訓課件:食品安全法律法規
- 社區養老院項目規劃設計方案
評論
0/150
提交評論