JAVAWEB項目開發(fā)網(wǎng)上訂餐系統(tǒng)_第1頁
JAVAWEB項目開發(fā)網(wǎng)上訂餐系統(tǒng)_第2頁
JAVAWEB項目開發(fā)網(wǎng)上訂餐系統(tǒng)_第3頁
JAVAWEB項目開發(fā)網(wǎng)上訂餐系統(tǒng)_第4頁
JAVAWEB項目開發(fā)網(wǎng)上訂餐系統(tǒng)_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

JAVAWEB項目開發(fā)網(wǎng)上

訂餐系統(tǒng)ThismanuscriptwasrevisedbytheofficeonDecember10,2020.分類號TP311.1單位代碼 分類號TP311.1學(xué)號學(xué)生畢業(yè)設(shè)計(論文)題 目 基于Java的網(wǎng)上訂餐系統(tǒng)作 者 周黎院(系) 信息工程學(xué)院專業(yè) 計算機(jī)科學(xué)與技術(shù)指導(dǎo)教師 張峰答辯日期 2010年05月 30日榆林學(xué)院畢業(yè)設(shè)計(論文)誠信責(zé)任書本人鄭重聲明:所呈交的畢業(yè)設(shè)計(論文),是本人在導(dǎo)師的指導(dǎo)下獨立進(jìn)行研究所取得的成果。畢業(yè)設(shè)計(論文)中凡引用他人已經(jīng)發(fā)表或未發(fā)表的成果、數(shù)據(jù)、觀點等,均已明確注明出處。盡我所知,除文中已經(jīng)注明引用的內(nèi)容外,本論文不包含任何其他個人或集體已經(jīng)公開發(fā)表或撰寫過的研究成果。對本文的研究做出重要貢獻(xiàn)的個人和集體,均已在文中以明確方式標(biāo)明。本人畢業(yè)設(shè)計(論文)與資料若有不實,愿意承擔(dān)一切相關(guān)的法律責(zé)任。論文作者簽名:2010年05月30日摘要隨著傳統(tǒng)的購物方式正在向網(wǎng)絡(luò)化發(fā)展,出現(xiàn)了“網(wǎng)購”這種越來越受歡迎的新型消費(fèi)方式。為了提高餐飲業(yè)務(wù)水平和效率,實現(xiàn)比電話訂購更有效的送餐業(yè)務(wù),網(wǎng)上訂餐系統(tǒng)因運(yùn)而生。通過對訂餐流程和業(yè)務(wù)進(jìn)行全面考察分析,結(jié)合目前最先進(jìn)的軟件開發(fā)技術(shù),實現(xiàn)了訂餐的網(wǎng)絡(luò)化管理。目前,網(wǎng)上訂餐業(yè)務(wù)還處于形成期,成長空間還很大。論文中詳細(xì)地對網(wǎng)上訂餐系統(tǒng)進(jìn)行了需求分析和總體設(shè)計,系統(tǒng)采用Java語言作為網(wǎng)站的開發(fā)語言,數(shù)據(jù)庫為MySQL5.0,所需圖片處理工具為ACDSee5.0;即通過采用JavaSwin計JDBC+MySQL技術(shù)來實現(xiàn)了系統(tǒng)的設(shè)計,并最終以MyEclipse6.5為開發(fā)環(huán)境實現(xiàn)了整個系統(tǒng)。本網(wǎng)站是能為客戶提供瀏覽餐品介紹、點菜訂餐、約定用餐時間、就餐或送餐等服務(wù)。本系統(tǒng)的前臺主要分前臺登錄和前臺界面兩部分,前臺界面包括網(wǎng)站首頁、訂餐流程、餐品展示、網(wǎng)上訂餐、信息發(fā)布、會員中心和后臺登錄等模塊;后臺界面主要包括餐品管理、訂單管理、信息管理、用戶管理等模塊。本系統(tǒng)適合在中小型餐飲企業(yè)中推廣使用,它能夠優(yōu)化餐飲業(yè)務(wù)流程,實現(xiàn)企業(yè)價值最大化,同時又使成本最低化,并最終提高自身在餐飲業(yè)中的競爭優(yōu)勢。關(guān)鍵詞:網(wǎng)購,網(wǎng)絡(luò)化管理,Swing,JDBC,網(wǎng)上訂餐AbstractAstraditionalwayofshoppingareturningtonetworkdevelopment,graduallyappearedtheincreasinglypopularnewconsumptionmode"ECommerce".Inordertoimprovethecateringbusinesslevelorefficiencyandtorealizethemoreeffectiveroomservicesthantelephonereservation;Onlineordersystemhasemergedbecauseofdemand.Throughtheinvestigationandcomprehensiveanalysisonprocessofthebusiness,combinedwiththemostadvancedsoftwaredevelopmenttechnology,itcanrealizethenetworkmanagementorder.Currently,theonlinebusinessisinformativeperiod,italsohasverybiggrowingspace.Ithasbeenconducteddemandanalysisandtheoveralldesignononlinereservationsystemdetailedlyinpapers.Javalanguageisadoptedasthedevelopmentlanguageofthesite,MySQL5.0asdatabase,ACDSee5.0astoolsfordealingwithpictures.Namely,JavaSwing+JDBC+MySQLtechnologyisusedtorealizethesystem,andfinallyMyEclipse6.5isusedasdevelopmentenvironmentinordertoimplementthissystem.Customerscanbrowsemealproductintroduction,order,beagreedmealtimes,repastinthiswebsite;alsomealscanbesenttotheminthewebsite.Theforegroundofthesystemismadeupoftwoparts,oneisforegroundlogin,theotheristheinterfaceofforeground.Foregroundinterfaceincludeshomepage,orderprocess,mealproductintroduction,onlineorder,informationrelease,themembercenterandbackgroundlogin,etc.Backgroundregionmainlycomprisesfoodinformationmanagement,ordermanagement,informationmanagementandusermanagementmodules.Thissystemispopularizedinsmallandmedium-sizedcateringenterprises.Itcanoptimizethecateringbusinessflowandrealizethemaximizationofenterprisevalue.Meanwhile,italsomakesthelowestcost,andfinallyenhancethecompetitiveadvantageinthecateringindustry.Keyword:E-Commerce,NetworkManagement,Swing,JDBC,OnlineOrder目錄第1章緒論項目背景及研究意義項目背景隨著我國餐飲行業(yè)的發(fā)展,因餐飲業(yè)門坎較低,中國的大多數(shù)餐飲企業(yè)的老板是從小店發(fā)展起來的,家族式管理的居多,許多還是“人治”,并沒有一套現(xiàn)代企業(yè)制度和監(jiān)督管理體制,所以從觀念意識、經(jīng)營思想和管理水平還有待專業(yè)化。隨著人民生活水平的提高,餐飲業(yè)在服務(wù)行業(yè)中占有越來越重要的地位。努力在當(dāng)前餐飲行業(yè)日趨激烈的競爭中脫穎而出,已成為每位餐飲業(yè)經(jīng)營者所追求的目標(biāo)。網(wǎng)絡(luò)訂餐實現(xiàn)了小店面大作為的成本效益,解決了因為店面小的限制而無法提高營業(yè)額的難題,是一個小投入大成效的經(jīng)營新模式。在計算機(jī)普及后的今天,中國進(jìn)入了互聯(lián)網(wǎng)信息時代,生活方式和工作節(jié)奏都隨著信息傳遞速度的加快而變得急促。從信件傳遞發(fā)展成Email,從傳統(tǒng)電話交流到IP電話網(wǎng)絡(luò)電話,一切原本屬于現(xiàn)實生活中的行為方式慢慢地向網(wǎng)絡(luò)轉(zhuǎn)移,傳統(tǒng)的購物方式也正在向網(wǎng)絡(luò)方面發(fā)展,出現(xiàn)了“網(wǎng)購”這種越來越受歡迎的新型消費(fèi)方式。同樣,作為服務(wù)業(yè)支柱的餐飲業(yè)不可避免地趨向網(wǎng)絡(luò)化發(fā)展。研究意義隨著社會經(jīng)濟(jì)的發(fā)展,人們的生活節(jié)奏不斷加快,上班時間相當(dāng)緊張,但一日三餐卻不可少。通過網(wǎng)上訂餐系統(tǒng),不必親臨現(xiàn)場,在家中或在辦公室上網(wǎng),便可以為自己、家人、朋友聚會等制辦一份既營養(yǎng)又實惠的美食。為了實現(xiàn)對客戶點菜信息收集、處理、共享和再利用,以提高餐飲業(yè)務(wù)水平和效率,實現(xiàn)比電話訂購更方便、更迅速、更有效的送餐業(yè)務(wù)。通過對訂餐流程的考察,對業(yè)務(wù)細(xì)節(jié)進(jìn)行了全面的分析,結(jié)合目前最先進(jìn)的軟件開發(fā)技術(shù),實現(xiàn)了訂餐的數(shù)字化、網(wǎng)絡(luò)化管理。餐飲系統(tǒng)不僅需要將整個餐飲業(yè)務(wù)通過信息系統(tǒng)進(jìn)行系統(tǒng)管理,同時需要將各類人工服務(wù)的工作交由計算機(jī)處理,比如點菜和菜單的傳送等等。同時,本網(wǎng)站是一個網(wǎng)上訂餐系統(tǒng),能為客戶提供網(wǎng)絡(luò)選擇商家、瀏覽菜品介紹、點菜訂餐、約定用餐時間、就餐或送餐以及注明貨幣支付方式等服務(wù)。這樣,傳統(tǒng)的訂餐方式也正在轉(zhuǎn)向網(wǎng)絡(luò)化發(fā)展,但目前,網(wǎng)上訂餐業(yè)務(wù)還處于形成期,成長空間還很大。國內(nèi)外研究現(xiàn)狀近幾年來,熱衷于“網(wǎng)上訂餐”的群體悄然壯大,上班族和學(xué)生更把它看成潮流浪尖上的亮點。在網(wǎng)上訂餐的人都是一般都是對電腦比較熟練的人,也就是比較年青化的消費(fèi)群體,包括白領(lǐng)、大學(xué)生、高中生和對計算機(jī)操作相對比較熟的人。因為這些人工作都比較忙,而且對計算機(jī)也比較熟,思想也比較超前,對于在網(wǎng)上訂餐能夠接受,并經(jīng)常上網(wǎng)訂餐。登錄訂餐網(wǎng)站,輸入“地址”后點擊搜索,出現(xiàn)“外賣店列表”,點擊進(jìn)入店面,明碼標(biāo)價的菜單立即躍入眼簾,用鼠標(biāo)逐個點擊你所要的品種,系統(tǒng)會累計放入“購物車”,輸入具體送餐地址即可下訂單,外送人員就會將美食送到你面前。網(wǎng)上訂餐存在幾大瓶頸。從生產(chǎn)分工來看,網(wǎng)上訂餐最終得引入專業(yè)物流配送,由現(xiàn)代化的物流公司提供配送服務(wù),這是它要突破的第一個瓶頸。其次,網(wǎng)上訂餐送餐和其它網(wǎng)絡(luò)服務(wù)一樣,要面臨網(wǎng)絡(luò)信用問題,從而影響網(wǎng)上訂餐業(yè)務(wù)。而網(wǎng)絡(luò)技術(shù)問題則是網(wǎng)上訂餐送餐的第三個瓶頸,如因技術(shù)問題丟失了客戶訂單,將會造成很大的負(fù)面影響。在網(wǎng)上訂餐的人相對來說還是比較少的情況下,對網(wǎng)上餐館的信用度持疑慮態(tài)度就成為了一個問題。另外,就是網(wǎng)上訂餐只可以看到物品的說明簡介和外觀,沒有看到實體于細(xì)節(jié)處,無法通過快速瀏覽確定是不是自己想要的菜品。而這正是傳統(tǒng)的實體餐館優(yōu)于網(wǎng)上餐館的地方。主要研究內(nèi)容本文主要研究網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn),在整個過程中主要完成以下工作:分析網(wǎng)上訂餐系統(tǒng)的現(xiàn)狀和發(fā)展趨勢,探討、選擇系統(tǒng)開發(fā)技術(shù)和開發(fā)平臺。研究系統(tǒng)開發(fā)所涉及的相關(guān)技術(shù)和理論,采用軟件工程的指導(dǎo)思想,分析系統(tǒng)的功能需求、性能需求和安全需求,進(jìn)行系統(tǒng)的總體設(shè)計。根據(jù)需求分析與總體設(shè)計,實現(xiàn)基于Java的網(wǎng)上訂餐系統(tǒng),應(yīng)用JavaSwing技術(shù)解決開發(fā)過程中所面臨的各種技術(shù)問題。對系統(tǒng)進(jìn)行部署與測試,根據(jù)測試結(jié)果,繼續(xù)完善系統(tǒng)。論文結(jié)構(gòu)論文共分為六章,各章主要內(nèi)容如下:第一章:緒論。提出項目背景、研究對象及其國內(nèi)外研究現(xiàn)狀,介紹本文的主要工作和組織結(jié)構(gòu)。第二章:系統(tǒng)需求分析。簡要描述了系統(tǒng)的可行性分析、需求分析以及設(shè)計目標(biāo)分析等。第三章:系統(tǒng)的概要設(shè)計。詳細(xì)描述了系統(tǒng)的數(shù)據(jù)流程、業(yè)務(wù)流程,完成系統(tǒng)所需數(shù)據(jù)庫的設(shè)計以及網(wǎng)站的整體設(shè)計。第四章:系統(tǒng)的詳細(xì)設(shè)計與實現(xiàn)。系統(tǒng)前臺、后臺的主要頁面的實現(xiàn)。第五章:系統(tǒng)的部署與測試。主要介紹了系統(tǒng)的運(yùn)行和測試。第六章:結(jié)論。對開發(fā)的系統(tǒng)做了總結(jié),指出了存在的不足之處,提出了以后需要進(jìn)一步完善的工作。第2章系統(tǒng)需求分析主要分為系統(tǒng)可行性分析、用戶需求分析;系統(tǒng)分析要求必須了解系統(tǒng)所實現(xiàn)的功能,這個設(shè)計的好壞直接影響的后面的開發(fā)。用戶需求分析主要是了解用戶的有哪些需求,本系統(tǒng)主要是用戶的購餐需求以及管理的需求。只有了解了需求分析才能進(jìn)行系統(tǒng)的開發(fā),否則就會事倍功半,達(dá)不到我們預(yù)期的效果,因此需求分析是至關(guān)重要的。2.1系統(tǒng)的可行性分析可行性,是指在當(dāng)前情況下,設(shè)計開發(fā)這個系統(tǒng)是否有必要,是否具備必要的條件,它不僅包括必要性,還包括合理性。系統(tǒng)的可行性分析,是針對要設(shè)計的系統(tǒng),研究其設(shè)計是否存在內(nèi)外部的必要條件,包括技術(shù)上、資金上、經(jīng)濟(jì)上、人力資源以及組織管理上的必要條件,同時要分析在目前條件下是否有必要設(shè)計這樣一個系統(tǒng)。2.1.1技術(shù)可行性1.硬件、軟件要求不高,目前市場上的一般計算機(jī)軟硬件資源均能滿足系統(tǒng)開發(fā)要求。其中運(yùn)用的主要軟件工具有MyEclipse6.5,ACDSee5.0等,數(shù)據(jù)庫開發(fā)采用MySQL5.0。技術(shù)支持JavaSwing技術(shù)Swing是一個用于開發(fā)Java應(yīng)用程序用戶界面的開發(fā)工具包。它以抽象窗口工具包(AWT)為基礎(chǔ)使跨平臺應(yīng)用程序可以使用任何可插拔的外觀風(fēng)格。它對AWT包進(jìn)行了修訂和擴(kuò)展,Swing中的控件類比AWT更豐富,新增了很多復(fù)雜控件;Swing的類不再含有與平臺相關(guān)的技術(shù),而把這些平臺相關(guān)技術(shù)留給運(yùn)行環(huán)境來處理,因而Swing是純粹的Java產(chǎn)物,具有最大程度的平臺兼容能力。利用Swing的控件類可以開發(fā)出各種操作系統(tǒng)風(fēng)格的應(yīng)用界面;Swing的控件類使用接口來實現(xiàn)用戶事件的處理,簡化了用戶輸入事件的處理機(jī)制。Swing開發(fā)人員只用很少的代碼就可以利用Swing豐富、靈活的功能和模塊化組件來創(chuàng)建優(yōu)雅的用戶界面。2) JDBC技術(shù)JDBC(JavaDataBaseConnectivity,java數(shù)據(jù)庫連接)是一種用于執(zhí)行SQL語句的JavaAPI,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用Java語言編寫的類和接口組成。JDBC實際上是Java制定的數(shù)據(jù)庫訪問操作的規(guī)范,它為工具數(shù)據(jù)庫開發(fā)人員或者Java程序員提供了一套標(biāo)準(zhǔn)的與數(shù)據(jù)庫無關(guān)的JDBCAPI編程接口,這些編程接口其實就是位于Java.sql包的一些接口和類,利用它們可以方便地對不同數(shù)據(jù)庫進(jìn)行數(shù)據(jù)查詢、插入、刪除和修改等操作。據(jù)此可以構(gòu)建更高級的工具和接口,使數(shù)據(jù)庫開發(fā)人員能夠用純Java語言編寫數(shù)據(jù)庫應(yīng)用程序。3) MySQL數(shù)據(jù)庫MySQL是一個小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫。MySQL是一個真正的多用戶、多線程SQL數(shù)據(jù)庫服務(wù)器,它是一個客戶機(jī)/服務(wù)器結(jié)構(gòu)的實現(xiàn)。MySQL是現(xiàn)在流行的關(guān)系數(shù)據(jù)庫中其中的一種,相比其它的數(shù)據(jù)庫管理系統(tǒng)(DBMS)來說,MySQL具有小巧、功能齊全、查詢迅捷等優(yōu)點,MySQL對于一般中小型,甚至大型應(yīng)用都能夠勝任。而該系統(tǒng)是采用純Java語言編寫而成,所以以上技術(shù)足以完成本系統(tǒng)的開發(fā)和設(shè)計。維護(hù)操作工作方便,后臺操作快捷明了,操作人員可以在短時間內(nèi)完全掌握維護(hù)技術(shù)。本系統(tǒng)自主網(wǎng)上訂餐管理,系統(tǒng)具有強(qiáng)大的商品管理、購物車、訂單統(tǒng)計、會員管理等功能,同時擁有靈活多變的商品管理、新聞管理等功能,系統(tǒng)操作簡單。2.1.2社會可行性1.網(wǎng)絡(luò)訂餐將傳統(tǒng)的交易流程信息化、數(shù)字化,一方面以信息流代替了面對面的交易,可以大量減少人力、物力,降低了成本;另一方面突破了時間和空間的限制,使得交易活動可以在任何時間、任何地點進(jìn)行,從而大大提高了效率。2.網(wǎng)絡(luò)訂餐使餐飲業(yè)以較低的成本進(jìn)入信息化市場,使得中小企業(yè)有可能擁有和大企業(yè)一樣的信息資源。它開放性的特點,為企業(yè)創(chuàng)造了更多的交易機(jī)會,提高了中小企業(yè)的競爭能力。3.網(wǎng)絡(luò)訂餐重新定義了傳統(tǒng)的流通模式,減少了中間環(huán)節(jié),使得生產(chǎn)者和消費(fèi)者的直接交易成為可能,從而在一定程度上改變了整個社會經(jīng)濟(jì)運(yùn)行的方式。經(jīng)濟(jì)可行性資金可行性:由于系統(tǒng)開發(fā)環(huán)境配置以及其開發(fā)并不復(fù)雜,只需一些基本的開發(fā)工具。而且開發(fā)出的系統(tǒng)操作起來也比較簡單,另外具備網(wǎng)絡(luò)中的一些資源優(yōu)勢,因此開發(fā)費(fèi)用較低。2.經(jīng)濟(jì)合理性:由于通過網(wǎng)絡(luò)進(jìn)行商務(wù)活動,信息成本低,足不出戶,可節(jié)省交通費(fèi),且減少了中介費(fèi)用,因此整個交易活動會降低成本。可行性研究結(jié)論依據(jù)以上因素,本系統(tǒng)開發(fā)項目不僅方便快捷、高效,而且社會效益比較好,從而使本系統(tǒng)開發(fā)者相信該系統(tǒng)開發(fā)出來之后將取得的成功。綜上所述,此項目在技術(shù)、經(jīng)濟(jì)和社會效益上是完全可行的。用戶需求分析功能分析作為一個網(wǎng)上訂餐系統(tǒng)。首先為了保證客戶能夠很方便的進(jìn)行餐品訂購,系統(tǒng)應(yīng)該具有分類查看餐品,系統(tǒng)應(yīng)該實現(xiàn)“購物車”的功能,用戶可以把選中的商品放入“購物訂單”中,在選購?fù)戤吅笤僖黄鸾Y(jié)帳。在系統(tǒng)的后臺,管理員能夠查看客戶購買的訂單,發(fā)布新聞,管理各類用戶等。為了更好進(jìn)行服務(wù),系統(tǒng)還應(yīng)該支持用戶投訴功能。因此可分析出本系統(tǒng)所實現(xiàn)的功能包括前臺和后臺兩部分,前臺為系統(tǒng)功能的主要部分。前臺主要以會員身份登錄后的頁面為主,功能包括如下幾部分:1)首頁餐館和餐品部分信息的簡單介紹。

2)訂餐流程實現(xiàn)對不同用戶訂餐流程的說明。3)餐品展示實現(xiàn)本餐館餐品的分類展示及查詢某餐品的具體信息。4)會員中心會員信息的查看與修改。5)信息發(fā)布商城信息的發(fā)布以及用戶投訴和客戶留言。6)網(wǎng)上訂餐訂單的填寫以及發(fā)送。7)后臺登陸通過相關(guān)驗證,管理員登陸后臺實現(xiàn)對用戶、餐品、訂單以及消息的管理。后臺功能包括如下幾部分:1)用戶管理對會員、游客、管理員三類用戶的管理。2)餐品管理實現(xiàn)對餐品信息的增刪改以及查詢等操作。3)訂單管理對用戶的訂單進(jìn)行管理。4)信息管理商城公告和商城動態(tài)信息的發(fā)布以及用戶投訴和客戶留言的管理。通過調(diào)查及需求分析可以了解網(wǎng)上訂餐系統(tǒng)的基本功能,并把這些功能以功能結(jié)構(gòu)圖形式畫出,可以形象地了解本系統(tǒng)實現(xiàn)的具體功能。本系統(tǒng)總功能結(jié)構(gòu)如圖2-1所示。圖2-1功能結(jié)構(gòu)圖2.2.2用例分析用例圖是被稱為參與者的外部用戶所能觀察到的系統(tǒng)功能的模型圖,呈現(xiàn)了一些參與者和一些用例,以及它們之間的關(guān)系,主要用于對系統(tǒng)、子系統(tǒng)或類的功能行為進(jìn)行建模,用例圖展示了用例之間以及同用例參與者之間是怎樣相互聯(lián)系的。本系統(tǒng)主要的角色(Actor)包括數(shù)據(jù)庫、管理員、游客、會員;系統(tǒng)主用例圖如下:圖2-2系統(tǒng)主用例圖卜面介紹應(yīng)用程序中的主要用例(usercase)。表2-1管理員用例描述用例名稱:管理員參與者:管理員前置條件:管理員成功登錄系統(tǒng)后臺用例功能:訂單、用戶、餐品、信息的管理事件流:當(dāng)管理員成功登錄系統(tǒng)后臺,彈出后臺界面異常事件流:當(dāng)管理員未登錄或輸入不合法的數(shù)據(jù)

后置條件:系統(tǒng)無改變表2-2游客注冊用例描述用例名稱:游客注冊參與者:普通用戶前置條件:游客未登錄系統(tǒng)用例功能:主要用于游客注冊個人信息,成為系統(tǒng)會員事件流:當(dāng)游客進(jìn)入注冊頁面異常事件流:當(dāng)用戶輸入不合法的數(shù)據(jù)或該會員號已存在后置條件:系統(tǒng)無改變表2-3會員訂餐用例描述用例名稱:會員參與者:普通用戶前置條件:會員成功登錄系統(tǒng)用例功能:會員通過網(wǎng)上訂餐模塊進(jìn)行訂餐事件流:當(dāng)會員登錄系統(tǒng)后選擇網(wǎng)上訂餐模塊異常事件流:當(dāng)會員未登錄或輸入不合法的數(shù)據(jù)后置條件:系統(tǒng)無改變2.3系統(tǒng)設(shè)計目標(biāo)分析開發(fā)的軟件是簡易的網(wǎng)上訂餐系統(tǒng),以各種用戶為主要服務(wù)對象。提供良好的用戶界面,實現(xiàn)與用戶的交流,方便會員、游客訂餐是本系統(tǒng)設(shè)計的目標(biāo)。該系統(tǒng)能夠?qū)崿F(xiàn)用戶的注冊,餐品查看,購物車式的餐品訂購,用戶投訴等功能,在系統(tǒng)的后臺,管理員可以處理用戶訂單并配送獲取,并可以對餐品信息、新聞、用戶投訴等實現(xiàn)集中管理。初步預(yù)想使用JavaSwin計JDBC+MySQL等技術(shù)來完成本網(wǎng)上訂餐系統(tǒng)。系統(tǒng)需要提供的主要功能如下:用戶能夠隨意瀏覽餐品,并能獲取餐品的詳細(xì)信息,如餐品圖片預(yù)覽、餐品簡介等。系統(tǒng)能夠向用戶提供一些瀏覽信息,讓用戶能夠快速的了解系統(tǒng)出售餐品的信息,如特色餐品等。系統(tǒng)能夠提供公告信息,讓用戶快速了解系統(tǒng)的通告信息。用戶既可以注冊成為本系統(tǒng)的會員,也可以以游客身份訂餐;但會員可以享受如下特權(quán):能隨時修改自己的信息,可以憑積分享受折扣等。系統(tǒng)有不同權(quán)限的用戶,如會員、游客、系統(tǒng)管理員等。系統(tǒng)可以管理餐品(添加、刪除、修改、查詢),訂單,新聞公告以及客戶投訴等等。第3章系統(tǒng)概要設(shè)計系統(tǒng)的概要設(shè)計是在系統(tǒng)分析的基礎(chǔ)上由抽象到具體的過程。主要包括系統(tǒng)設(shè)計、數(shù)據(jù)庫的需求分析以及網(wǎng)站的整體設(shè)計三大塊。系統(tǒng)設(shè)計主要目標(biāo)是將系統(tǒng)分析階段所提出的反映了信息需求的系統(tǒng)邏輯方案轉(zhuǎn)換成可以實施的基于計算機(jī)運(yùn)行環(huán)境的具體方案,進(jìn)行系統(tǒng)的概要設(shè)計,為下一階段系統(tǒng)詳細(xì)設(shè)計提供必要的技術(shù)資料。系統(tǒng)設(shè)計系統(tǒng)設(shè)計主要完成各個模塊的設(shè)計,以及所需的技術(shù)。系統(tǒng)流程概述用戶在瀏覽網(wǎng)站時首先看到的就是網(wǎng)站首頁。在首頁用戶可以了解本餐館和部分特色餐品的信息。用戶如果想要訂餐時或者直接通過電話或者直接填寫收貨人的信息或者注冊成為會員,在用戶查看完商品的信息后,可以把自己想要購買的商品加入訂單中,也可以隨時修改,清空訂單里的商品,如果用戶對訂單里的商品都很滿意,就可以直接下訂單(非會員要填寫收貨人的信息才能下訂單)。這時相關(guān)的程序模塊會將用戶所提交的所有信息都記錄在數(shù)據(jù)庫里以便系統(tǒng)的管理人員可以核對信息并準(zhǔn)備餐品,專門送餐人員給用戶配送餐品并收取現(xiàn)金,此時整個訂餐的過程便結(jié)束。在網(wǎng)絡(luò)訂餐的后臺管理方面還需要添加、修改、刪除餐品,同時各類用戶信息的管理,商城公告的設(shè)置,站內(nèi)新聞的發(fā)布和訂單的處理等都需要系統(tǒng)的管理人員來操作,網(wǎng)絡(luò)訂餐的業(yè)務(wù)流程圖如圖3-1所示:圖3-1業(yè)務(wù)流程圖數(shù)據(jù)流程本系統(tǒng)涉及的數(shù)據(jù)較多,因此對于系統(tǒng)的設(shè)計首先要了解系統(tǒng)中數(shù)據(jù)的流向,只有清楚數(shù)據(jù)之間的關(guān)系,才能正確的設(shè)計系統(tǒng)的功能??梢酝ㄟ^數(shù)據(jù)流程圖來表明數(shù)據(jù)之間的關(guān)系。從圖3-2中可以看到,會員成功登錄后,可以修改查看個人信息,并將這些修改完善后的信息存檔;還可以在查看餐品信息后下訂單,訂單會存儲在數(shù)據(jù)庫對應(yīng)表中。尚未注冊的用戶,可以在查看餐品信息后下訂單,訂單也會存儲在數(shù)據(jù)庫對應(yīng)表中,同時游客信息會保存在相應(yīng)的表中。這些數(shù)據(jù)流最終都要進(jìn)入數(shù)據(jù)庫,管理員會對這些信息進(jìn)行分類管理。圖3-2數(shù)據(jù)流程圖3.1.3功能用例會員與游客用例圖呈現(xiàn)了會員和游客各自具有的功能,以及它們之間的關(guān)系;管理員用例圖呈現(xiàn)了管理員所具有的主要功能。1.會員與游客用例圖圖3-3會員與游客用例圖管理員用例圖圖3-4管理員用例圖3.2數(shù)據(jù)庫的設(shè)計數(shù)據(jù)庫的需求分析主要是數(shù)據(jù)庫和數(shù)據(jù)庫表的建立,該系統(tǒng)中需要存儲那些數(shù)據(jù),都是在這個設(shè)計中實現(xiàn),它們的詳細(xì)實現(xiàn)過程如下:WEB應(yīng)用跟蹤和管理用戶的訂單,行為主要有兩種措施:一種是使用Session或Cookies保存用戶活躍期間的信息,但是這些信息在會話結(jié)束后將不再存在。對于那些需要持久保存的信息,以及數(shù)據(jù)量比較大的數(shù)據(jù)必須通過數(shù)據(jù)庫來進(jìn)行存儲。數(shù)據(jù)庫適合存儲那些需要持久保存的信息,并且提供很好的方式進(jìn)行查詢,插入,修改和刪除。網(wǎng)上訂餐是面向龐大用戶的信息化產(chǎn)品,MySQL是一個真正的多用戶、多線程SQL數(shù)據(jù)庫服務(wù)器,它是一個客戶機(jī)/服務(wù)器結(jié)構(gòu)的實現(xiàn)。MySQL是現(xiàn)在流行的關(guān)系數(shù)據(jù)庫中其中的一種,相比其它的數(shù)據(jù)庫管理系統(tǒng)(DBMS)來說,MySQL具有小巧、功能齊全、查詢迅捷等優(yōu)點,MySQL主要目標(biāo)是快速、健壯和易用。因此本系統(tǒng)選擇MySQL作為數(shù)據(jù)庫。3.2.2關(guān)系數(shù)據(jù)模型圖3-5關(guān)系數(shù)據(jù)模型3?2?3主要的E-R模型ER模型[EntityRelationshipModel]是一種叫做實體聯(lián)系模型的簡稱,它是以圖形的方式表現(xiàn)的,又被稱作實體聯(lián)系圖,ER模型是人們描述數(shù)據(jù)及其聯(lián)系的概念數(shù)據(jù)模型,是數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計人員和普通非計算機(jī)專業(yè)用戶進(jìn)行數(shù)據(jù)建模和溝通與交流的有力工具,使用起來直觀易懂,簡單易行,ER模型是一種用圖形表示數(shù)據(jù)及其聯(lián)系的方法,所使用的圖形構(gòu)件(元件)包括矩形、菱形、橢圓形和連接線。主要的ER模型圖如下:管理員可以管理訂單的各個信息,設(shè)計的ER模型如下:圖3-6管理員與訂單模型管理員管理會員的各個信息,設(shè)計的ER模型如下:圖3-7管理員與會員模型管理員管理一般的用戶游客的各個信息,設(shè)計的ER模型如下:圖3-8管理員與游客模型管理員管理會員投訴的各個信息,設(shè)計的ER模型如下:圖3-9管理員與投訴信息模型管理員管理餐品的信息,設(shè)計的ER模型如下:圖3-10管理員與餐品模型會員可以填寫訂單并發(fā)送訂單,設(shè)計的ER模型如下:圖3-11會員與訂單模型3?2?4數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計1) 管理員表,主要用于管理用戶及用戶的訂單等,表結(jié)構(gòu)如表3-1所示:表3-1管理員表數(shù)據(jù)表名Admin中文名管理員表數(shù)據(jù)庫名weborder創(chuàng)建者周黎所屬模塊網(wǎng)上訂餐設(shè)計時間2010.05.01字段意義字段名字段類型非空默認(rèn)值主鍵備注IDAidBIGINTV序列V管理員登錄名AloginVARCHARV登錄密碼ApwdVARCHARV姓名AnameVARCHAR聯(lián)系電話AphoneVARCHAR

會員表,主要用于存儲用戶的注冊信息,表結(jié)構(gòu)如表3-2所示:表3-2會員表數(shù)據(jù)表名Users中文名會員表數(shù)據(jù)庫名Weborder創(chuàng)建者周黎所屬模塊網(wǎng)上訂餐設(shè)計時間2010.05.01字段意義字段名字段類型非空默認(rèn)值主鍵備注IDUidBIGINTV序列V會員號UloginVARCHARV登錄密碼UpwdVARCHARV姓名UnameVARCHARqq號碼UqqVARCHAR聯(lián)系地址UadrsVARCHARV聯(lián)系電話UphoneVARCHARV身份證號碼UidcardVARCHAR郵箱UemailVARCHAR積分UscoreFLOAT訂單表,主要用于用戶的訂單資料的存儲,表結(jié)構(gòu)如表3-3所示表3-3訂單表數(shù)據(jù)表名OrderList中文名訂單表數(shù)據(jù)庫名Weborder創(chuàng)建者周黎所屬模塊網(wǎng)上訂餐設(shè)計時間2010.05.01字段意義字段名字段類型非空默認(rèn)值主鍵備注IDOidBIGINTV序列V餐品名稱OfnameVARCHAR餐品份數(shù)OfnumVARCHAR總計OmoneyFLOAT折扣OcutFLOAT訂單聯(lián)系人OunameVARCHARV聯(lián)系電話OphoneVARCHARV送餐地址OaddVARCHARV就餐方式OwayVARCHARV其他需求OneedVARCHAR訂單時間OdateDATETIMEV就餐成功與否OynVARCHAR

反饋信息表,主要用于會員留言及投訴等信息的存儲,表結(jié)構(gòu)如表3-4所示:表3-4信息反饋表數(shù)據(jù)表名FeedbackNews中文名信息反饋表數(shù)據(jù)庫名Weborder創(chuàng)建者周黎所屬模塊網(wǎng)上訂餐設(shè)計時間2010.05.01字段意義字段名字段類型非空默認(rèn)值主鍵備注IDNbidBIGINTV序列 V會員號NuloginVARCHARV密碼NupwdVARCHARV餐品名稱NfnameVARCHAR餐品評價NfpingVARCHAR網(wǎng)站評價NwpingVARCHAR投訴問題NwentiVARCHAR答復(fù)與否NreplyVARCHAR答復(fù)內(nèi)容NrecontVARCHAR5)新聞表,主要用于新聞、公告等信息存儲,表結(jié)構(gòu)如表3-5所示:表3-5新聞表數(shù)據(jù)表名News中文名信息表數(shù)據(jù)庫名Weborder創(chuàng)建者周黎所屬模塊網(wǎng)上訂餐設(shè)計時間2010.05.01字段意義字段名字段類型非空默認(rèn)值主鍵備注IDNidBIGINTV序列V發(fā)布人姓名NanameVARCHARV新聞標(biāo)題名稱NtitleVARCHARV新聞簡介NjieVARCHAR新聞類別NkindVARCHAR新聞內(nèi)容NcontentVARCHAR發(fā)布時間NtimeDATETIME6)游客表,主要用于管理游客信息即存儲游客信息等,表結(jié)構(gòu)如表3-6所示:表3-6游客表數(shù)據(jù)表名Visit中文名游客表數(shù)據(jù)庫名WebOrder創(chuàng)建者周黎所屬模塊網(wǎng)上訂餐設(shè)計時間2010.05.01字段意義字段名字段類型非空默認(rèn)值主鍵備注IDVidBIGINTV序列V

姓名 VnameVARCHAR V電話 VphoneVARCHAR V地址 VadrsVARCHAR V7)餐品表,主要用于餐品信息的存儲,表結(jié)構(gòu)如表3-7所示:表3-7餐品表數(shù)據(jù)表名Food中文名餐品表數(shù)據(jù)庫名Weborder創(chuàng)建者周黎所屬模塊網(wǎng)上訂餐設(shè)計時間2010.05.01字段意義字段名字段類型非空默認(rèn)值主鍵備注IDFidBIGINTV序列V餐品名稱FnameVARCHARV餐品價格FpriceFLOATV餐品種類FkindVARCHARV快餐簡介FsmryVARCHAR快餐圖片地址FpictVARCHAR3.3網(wǎng)站整體設(shè)計網(wǎng)站整體設(shè)計主要是文件架構(gòu)以及系統(tǒng)文件的組成等。3.3.1文件結(jié)構(gòu)數(shù)據(jù)庫設(shè)計完成后,就要搭建系統(tǒng)程序的文件結(jié)構(gòu)了。通過以上的簡要分析得出的整個網(wǎng)站的文件結(jié)構(gòu),細(xì)分為總文件目錄結(jié)構(gòu)和src文件結(jié)構(gòu),具體如下三個圖所示:圖3-12總文件目錄結(jié)構(gòu)圖src文件夾由于組成文件太多,一個結(jié)構(gòu)圖不足以包含所有文件,所以將其中幾個文件夾分成兩部分,具體如圖3-13所示:圖3-13-1src文件結(jié)構(gòu)圖[1]圖3-13-2src文件結(jié)構(gòu)圖[2]3.3.2系統(tǒng)文件組成本系統(tǒng)主要組成文件、系統(tǒng)頁面對應(yīng)的文件和相應(yīng)功能說明如下:UserLogin.java登錄頁面類,可以實現(xiàn)會員、游客登錄。UserRegistration.java會員注冊頁面類,實現(xiàn)非會員用戶的注冊。Homepage.java會員登錄后系統(tǒng)主頁面類;系統(tǒng)主頁面由七大模塊組成,以JTabbedPane標(biāo)簽頁的形式嵌套這七大模塊對應(yīng)于不同的頁面。VisitMain.java 游客登錄后系統(tǒng)主頁面類;該系統(tǒng)主頁面由六大模塊組成,以JTabbedPane標(biāo)簽頁的形式嵌套;這六大模塊對應(yīng)于不同的頁面。ManagerMain.java管理員登錄后的后臺主頁類,該頁由JMenu套接四大模塊。訂單管理模塊由一個頁面OrderManagement.java組成;用戶管理由三個頁面組成,餐品管理FoodManagement.java;信息管理有四個頁面組成。DBLink.java 系統(tǒng)連接數(shù)據(jù)庫的類,實現(xiàn)對數(shù)據(jù)庫連接的打開關(guān)閉以及對數(shù)據(jù)庫中元素的操作等。Convert.java 系統(tǒng)數(shù)據(jù)類型轉(zhuǎn)換類,解決對數(shù)據(jù)中元素的操作時出現(xiàn)的亂碼問題等。第4章系統(tǒng)詳細(xì)設(shè)計與實現(xiàn)根據(jù)前面的分析和客戶的需求,本訂餐系統(tǒng)由前臺和后臺兩部分組成,前臺主要是包括前臺登錄和前臺主界面兩部分,后臺主要就是后臺登錄和后臺登錄后的界面,后臺登錄作為前臺主界面的一個子模塊實現(xiàn)。該階段主要完成各子模塊的設(shè)計以及頁面與數(shù)據(jù)庫的鏈接工作。4.1類的關(guān)聯(lián)關(guān)系關(guān)聯(lián)關(guān)系類圖包括了本網(wǎng)站的主要頁面以及它們之間的簡單關(guān)系(可按頁面名稱在上節(jié)的“”查詢其具體功能)。圖4-1主要類的關(guān)聯(lián)關(guān)系圖前臺開發(fā)前臺開發(fā)主要是包括前臺登錄和前臺主界面兩部分,前臺主界面由網(wǎng)站首頁、訂餐流程、餐品展示、網(wǎng)上訂餐、會員中心和后臺登錄、系統(tǒng)消息的發(fā)布等模塊組成。1.界面總體類圖圖4-2會員前臺系統(tǒng)類圖2.詳細(xì)設(shè)計及類圖會員登錄后的界面由文件Homepage.java實現(xiàn);對于一個網(wǎng)絡(luò)訂餐系統(tǒng),網(wǎng)站首頁極為重要,首頁設(shè)計的好壞將直接影響到顧客的購買欲望。網(wǎng)上首頁由文件Primary.Java實現(xiàn)。在網(wǎng)站首頁中,用戶不但可以掌握特色餐品網(wǎng)站信息等。餐品展示頁面用FoodInformation.Java完成。其設(shè)計思路:為了抓住顧客的購買欲,網(wǎng)絡(luò)訂餐應(yīng)該引導(dǎo)用戶進(jìn)行購買,因此設(shè)置推薦餐品等,主導(dǎo)為用戶提供查看餐品和訂餐方便。另外,對于一個網(wǎng)上訂餐系統(tǒng)而言,可以按類別查詢餐品,所以設(shè)計餐品分類時,應(yīng)該將餐品分類制成數(shù)據(jù)表存儲在數(shù)據(jù)庫中,以便動態(tài)地進(jìn)行更新。用戶通過輸入不同類別中的餐品名就可以進(jìn)入相應(yīng)的餐品詳細(xì)介紹的展示頁面,餐品展示頁面主要實現(xiàn)以下功能:用戶可以查看商品的詳細(xì)信息;用戶可以直接“訂購”進(jìn)行餐品的訂購;餐品查詢結(jié)果頁面的類圖如4-3,餐品展示頁面的類圖如4-4所示:圖4-3餐品查詢結(jié)果類圖 圖4-4餐品展示類圖會員訂餐由OrderForUser.Java來實現(xiàn)。其中的訂單表格是用來臨時存儲用戶購物信息的,用戶可以隨時增加商品,修改商品數(shù)量,刪除商品以及清空表格。設(shè)計思路:將用戶的購物信息存入一個臨時表或臨時文件中,當(dāng)用戶結(jié)賬下訂單時再刪除臨時記錄。由于本系統(tǒng)是一個小型的訂餐網(wǎng)站,所以可以考慮使用一個數(shù)據(jù)表來訂餐,使用數(shù)據(jù)表:會員表,訂單表,餐品表;會員訂餐頁面的類圖如4-5所示:圖4-5會員訂餐類圖會員中心是僅會員前臺系統(tǒng)有的模塊,當(dāng)用戶注冊成為會員后,可以查看修改個人信息。使用數(shù)據(jù)表:會員表,訂單表,反饋信息表等;會員信息修改類圖如圖4-6,訂單查看類圖如4-7所示:圖4-6會員信息修改類圖圖4-7會員訂單查看類圖系統(tǒng)的信息發(fā)布主要有三種:系統(tǒng)公告,會員積分以及對客戶投訴。系統(tǒng)公告頁面類圖如圖4-8,會員評價投訴頁面類圖如圖4-9,會員評價或投訴流程圖如圖4-10所示:圖4-8系統(tǒng)公告類圖 圖4-9會員評價或投訴類圖圖4-10會員評價或投訴流程用戶登錄與注冊1.用戶登錄前臺登錄實際上是用來實現(xiàn)會員和游客這兩類用戶的登錄,同時其上的“注冊”按鈕可以進(jìn)去會員注冊頁面。會員和游客會進(jìn)入不同的前臺主界面。使用數(shù)據(jù)表:會員表;在會員登錄程序中,有兩個輸入框、分別為輸入會員名、密碼,有4個按鈕,分別為:清空、登錄、注冊和游客;會員登錄處理流程如圖4-11,前臺登錄的頁面的類圖如圖4-12所示:圖4-11會員登錄處理流程圖4-圖4-12前臺登錄類圖13圖4-2.用戶注冊本系統(tǒng)既可以為游客服務(wù)也可以為注冊的用戶服務(wù),沒有注冊的游客也可以訂餐,將餐品加入訂單中,待用戶選擇好所有餐品后就可以點擊下面的下訂單操作。這里會檢查用戶是否輸入用戶名、聯(lián)系電話、聯(lián)系地址是否輸入,如果沒有輸入,會提示用戶輸入相應(yīng)的信息,否則是不能下訂單的。為方便用戶注冊,在會員登錄框上點擊注冊按鈕會進(jìn)入注冊頁面,使用數(shù)據(jù)表:會員表;會員注冊類圖如圖4-13所示;注冊頁面主要實現(xiàn)以下功能:1)檢查用戶輸入信息的正確性;2)提示注冊是否成功的信息;保存會員信息并返回登錄框;游客進(jìn)入的前臺1.界面總體類圖圖4-14游客前臺類圖2.詳細(xì)設(shè)計及類圖游客登錄的前臺系統(tǒng)同會員類似,只是少了會員中心模塊,而且游客訂餐頁面與會員訂餐模塊稍有不同。因此,只對游客訂餐頁面作出詳細(xì)分析,游客訂餐由OrderForVisit.Java來實現(xiàn)。使用數(shù)據(jù)表:游客表,訂單表,餐品表;其類圖如圖4-15所示:圖4-15游客訂餐類圖后臺開發(fā)后臺開發(fā)主要包括頁面設(shè)計、后臺登錄和登錄后主頁三塊,由于后臺登錄作為前臺進(jìn)入后臺的通道,所以,在設(shè)計時把后臺登錄作為前臺的一個子模塊去實現(xiàn)。登錄后主頁主要包括商品管理、訂單管理、信息管理、用戶管理等四部分,它們有各自具有自己的子頁面,具體的實現(xiàn)分析如下:后臺總類圖圖4-16后臺總類圖本網(wǎng)站后臺主要有4大功能模塊組成,分別是:商品管理,訂單管理,信息管理,用戶管理;詳細(xì)設(shè)計如下。后臺登錄設(shè)計思路:后臺主要是實現(xiàn)管理功能。功能導(dǎo)航區(qū)用于提供網(wǎng)站的管理功能導(dǎo)航,主操作區(qū)用于完成各種管理功能。管理員首先要登錄后臺,登錄成功后才可以對各類信息進(jìn)行管理。后臺登錄頁面類圖與控制流程圖分別如下所示:圖4-17后臺登錄類圖圖4-18后臺登錄控制流程品管理餐品的管理主要是對餐品的信息進(jìn)行管理,實現(xiàn)對餐品的添加和刪除和更改管理。主要用到的表:餐品表;其類圖如圖4-19所示:圖4-19餐品管理類圖訂單管理前臺用戶完成購物后,最終會產(chǎn)生訂單。而后臺訂單管理主要就是對這些訂單進(jìn)行處理,并根據(jù)訂單進(jìn)行送餐,這樣就可以查看那些訂單需要配送,那些訂單已經(jīng)完成交易(用以方便用戶積分管理),主要用到的表:訂單表,餐品表,管理員表;類圖如圖4-20所示:圖4-20訂單管理類圖4.3.5信息管理信息管理分為對商城公告信息的管理,對商城動態(tài)信息的管理,對站內(nèi)新聞的管理,用戶反饋信息的管理等。主要用到的表:新聞表和反饋信息表;反饋信息類圖如圖4-21所示:圖4-21反饋信息管理類圖4.3.6用戶管理用戶管理主要分為三大部分:第一部分就是會員信息管理,第二部分是游客管理,第三個部分是對管理員信息的管理;在會員管理上用到了會員表,在游客管理上用到了游客表,對管理員的管理需要使用管理員表。會員管理類圖如圖4-22所示:圖4-22會員管理類圖4.4接口類代碼4.4.1數(shù)據(jù)庫連接1.連接數(shù)據(jù)庫weborder與Java系統(tǒng)OrderOnLine的類DBLink.java。清單4-1packageJDBC;/*數(shù)據(jù)庫連接類*/importjava.sql.*;publicclassDBLink{privatestaticConnectionconn=null;privatestaticDBLinkdbm=null;privatestaticStatementsta=null;privatestaticStringuser="root";privatestaticStringpassword="1111";privateDBLink(){try{Class.forName(jdbcDriver);try{password);conn=DriverManager.getConnection(url,user,sta=conn.createStatement();password);}catch(SQLExceptione){}}catch(ClassNotFoundExceptione){}}publicstaticDBLinkgetDBM(){if(dbm==null)dbm=newDBLink();returndbm;}//數(shù)據(jù)庫增、刪、改publicbooleanUpdateData(Stringsql){booleanresult=false;intre=0;try{re=sta.executeUpdate(sql);}catch(SQLExceptione){e.printStackTrace();}finally{closeDB();}if(re>0)result=true;returnresult;}//查詢數(shù)據(jù)publicResultSetgetRs(Stringsql){ResultSetrs=null;try{rs=sta.executeQuery(sql);}catch(SQLExceptione){e.printStackTrace();}finally{closeDB();}returnrs;}//關(guān)閉的方法publicvoidcloseDB(){try{conn.close();}catch(Exceptione){e.printStackTrace();}}}4.4.2部分頁面代碼會員點菜頁面OrderForUser.java,其代碼清單如下所示:清單4-2importMain.Homepage;/**@author周黎*@category簡易網(wǎng)上訂餐系統(tǒng)會員訂餐頁面*/publicclassOrderForUserextendsJPanelimplementsItemListener{boxeat,boxnum,boxname;Object[]obj11={"餐品名稱","份數(shù)","單價(元)","是否刪除"};Object[][]obj12=newObject[50][4];Object[]obj1={"1","2","3","4","5","6","7","8","9","10","11","12","13","14","15"};ublicOrderForUser(){this.setLayout(null);Toolkitkit=this.getToolkit();DimensionwinSize1=kit.getScreenSize();//添加餐品panellfor(intn=0;n<15;n++){box2.addItem(objl[n]);}label4=newJLabel("餐品類別”);jtfkind=newJTextField();jtfkind.setEditable(false);jtfkind.setBorder(newLineBorder(newColor(l00,l00,l00),l));jbl=newJButton("加入訂單”);jbjl=newJLabel(newImageIcon("img/dabj/dabjll.jpg"));jb2=newJButton("清空”);/加入訂單按鈕事件監(jiān)聽jbl.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){Stringfood=boxname.getSelectedItem().toString();Stringfnum=box2.getSelectedItem().toString();Stringprice=jtfl.getText();if(food.equals("請選擇餐品名稱")){JOptionPane.showMessageDialog(null,"還沒有選擇餐品名稱!");}else{try{objl2[0][0]=food;objl2[0][l]=fnum;objl2[0][2]=price;objl2[0][3]="否";panel4=newJPanel();panel4.setLayout(null);DefaultTableModeldtml=new//定義一個表的模板DefaultTableModeldtml=newDefaultTableModel(objl2,objll);Stringprice1=obj12[0][2].toString();Stringnum1=obj12[0][1].toString();Stringscore1=jtf5.getText();floatscore2=Float.parseFloat(score1);floatprice2=Float.parseFloat(price1);floatnum2=Float.parseFloat(num1);floatmoney=price2*num2;floatmoneycut=0;if(score2>=100){moneycut=(money-score2/100);score2=(score2-(score2/100)*100);}else{moneycut=money;}}catch(Exceptione1){}}}});第5章系統(tǒng)的部署與測試5.1運(yùn)行環(huán)境的搭建5.1.1系統(tǒng)運(yùn)行環(huán)境的搭建安裝JDK要編譯和調(diào)試運(yùn)行Java程序,首先需要安裝JDK,可以從Sun公司的站點m下載,當(dāng)然需要根據(jù)使用的平臺的不同來下載不同的版本。下載并安裝好以后,需要配置環(huán)境變量,其作用是讓應(yīng)用程序可以方便快捷地找到所需要的路徑。配置Java運(yùn)行環(huán)境主要用到的環(huán)境變量有3個:JAVA_HOME:就是Java的安裝路徑。PATH:PATH是Windows固有的。要加上JAVA_HOME\bin目錄,這樣在運(yùn)行javac、java等命令時就不用輸入很長的路徑了。CLASSPATH:CLASSPATH是運(yùn)行Java非常重要的一個環(huán)境變量,Java在編譯和運(yùn)行應(yīng)用程序時都要通過它去找到需要的類文件。放在CLASSPATH里的一般是路徑或jar文件,如果是路徑的話就是說這個路徑下的類可以使用。還要考慮到Java文件的包(package)和文件夾之間的對應(yīng)關(guān)系。MySQL5.0的安裝在安裝數(shù)據(jù)庫管理軟件MySQL5.0成功后,還應(yīng)安裝Sqlyog來作為MySQL5.0的可視化運(yùn)行界面。JDBC驅(qū)動的安裝下載MySQL鏈接Java的壓縮包mysql-connector-java—bin.jar,并將它放置在安裝Java的目錄下。同時,編寫程序HelloMysql.Java來測試Java與MySQL是否連通。系統(tǒng)測試軟件測試是保證軟件可靠性的手段,測試階段的任務(wù)就是發(fā)現(xiàn)并改正軟件中的錯誤。軟件測試是軟件開發(fā)過程中最繁重的任務(wù)。通過編碼和調(diào)試只能保證程序能夠正常的運(yùn)行起來,不出現(xiàn)編譯上的錯誤,但是這并不意味著程序沒有潛藏的錯誤和邏輯上的錯誤,而要排除這樣的錯誤就要通過測試來完成。測試在本系統(tǒng)中包括界面的測試和對程序執(zhí)行結(jié)果是否正確的測試。本系統(tǒng)的測試如圖5-1所示。圖5-1系統(tǒng)中所涉及的測試在編寫完代碼之后,要把程序執(zhí)行過程中所有可能走到的點記下來,這些點是可能導(dǎo)致程序出現(xiàn)錯誤的點,并且把對走到相應(yīng)的點的處理也要記錄下來,把這些組成的文件稱為測試點文件,通過測試點文件可以生成各種合理的測試方案,使得測試盡量能夠走遍程序中的所有點,只有這樣才能表示測試的成功。這個記錄文件就相當(dāng)于畫面設(shè)計書一樣,測試是交互進(jìn)行的,并不是各自測試自己的程序,盡管如此,通過測試點文件對方仍能夠知道程序執(zhí)行的具體流程,所以在這個測試中仍然是白盒測試。在單元測試都完成之后,再進(jìn)行系統(tǒng)的集成測試。集成測試包括兩種方法,一是先測試每個模塊,再把所有模塊按照設(shè)計的要求組合成所要的程序,這種方法成為非漸增式測試方法,另一個是把下一個要測試的模塊同已測試好的那些模塊結(jié)合起來進(jìn)行測試,測試完成之后再把下一個要測試的模塊結(jié)合起來進(jìn)行測試。這種每次增加一個模塊的方法為漸增式測試。常見錯誤編完程序后,最后一步就是對系統(tǒng)進(jìn)行測試。本網(wǎng)上訂餐系統(tǒng)主要是用Java語言編寫的,最常見的錯誤是出現(xiàn)異常。1) 語法錯誤:它是由錯誤的腳本語法引起的,如:命令的拼寫錯誤或傳遞函數(shù)的參數(shù)值錯誤。2) 運(yùn)行時錯誤:運(yùn)行時錯誤是發(fā)生在程序開始執(zhí)行之后,它是由試圖執(zhí)行不可能操作的程序所引起的。3) 邏輯錯誤:邏輯錯誤是最難發(fā)現(xiàn)的錯誤。通常邏輯錯誤是由輸入錯誤或程序邏輯上的缺陷引起的,程序運(yùn)行沒有問題,但運(yùn)行的結(jié)果卻不正確。測試的方法依據(jù)前面所說的測試對象,我們把測試劃分為幾個方面來進(jìn)行測試。1)界面測試界面測試是測試過程中比較簡單直觀的一種測試方法,只要細(xì)心地按界面要求核對就行了。可這一塊內(nèi)容往往是程序開發(fā)人員最容易忽視和遺漏的地方,也是常常出Bug的地方。下面是界面測試中經(jīng)常出現(xiàn)的幾種Bug:錯別字,即界面中的標(biāo)題或者文本內(nèi)容中出現(xiàn)了錯別字。這種Bug如果測試人員不細(xì)心,很難找出來,可能會出現(xiàn)在提示信息或界面中。出現(xiàn)了一些根本讀不懂的內(nèi)容,一般多出現(xiàn)在程序的提示信息和一些較長的文本中。這種情況基本上出現(xiàn)在拼起來顯示的提示中,頁面的簡單陳述是通過變量拼組起來的,通過程序?qū)⒆忠粋€一個地輸出來。通常是因為程序中的控制錯誤或是程序開發(fā)人員對程序沒有進(jìn)行認(rèn)真的自測,導(dǎo)致出現(xiàn)這種Bug。頁面類似的內(nèi)容中,明顯有字體,字號不同的情況,使界面整體風(fēng)格看上去不一致,這種情況只出現(xiàn)在沒有CSS定義的情況下,或是已經(jīng)定義的CSS,在開發(fā)過程中沒有調(diào)用。標(biāo)題相近的程序及模塊,把標(biāo)題弄混。這種情況多是因為業(yè)務(wù)方面的定義名稱很相似或很類似,并且業(yè)務(wù)實體方面也很類似,開發(fā)人員在開發(fā)過程中忽略了開發(fā)名稱和模塊,只單獨地實現(xiàn)其功能。2)功能測試顧名思義,功能測試主要是測試程序模塊是否實現(xiàn)了設(shè)計中所有要求的功能。功能測試中需要注意的有:訂餐功能中,有關(guān)于訂餐時間有一些常識性的問題,比如:閏年中二月的天數(shù)。關(guān)于后臺修改各種信息功能的測試,主要是看修改確認(rèn)后是否數(shù)據(jù)真正已被修改了。這是最基本的功能,需要注意的是是否把不應(yīng)該修改的數(shù)據(jù)也被修改成功了。3)需求測試需求測試是測試中很重要的一個環(huán)節(jié)。因為需求是軟件設(shè)計,開發(fā)乃至軟件測試中最重要的依據(jù)。要針對需求測試,首先就要對項目的需求和業(yè)務(wù)有一定的了解。這些需求很多時候是在實現(xiàn)增、刪、查、改,這些基本功能之上,結(jié)合項目和相關(guān)業(yè)務(wù)所作的一些邏輯上的控制,這就要求程序員在設(shè)計和編碼的時候要去充分理解考慮需求。4)性能測試性能測試在軟件的質(zhì)量保證中起著重要的作用。通常我們把性能指標(biāo)全部歸結(jié)到硬件,操作系統(tǒng)和開發(fā)環(huán)境上,而忽略了代碼本身性能上的考慮。性能需求指標(biāo)中,穩(wěn)定性,并行訪問支撐能力以及安全性都很重要,作為程序員需要評估該模塊在系統(tǒng)運(yùn)行中所處的環(huán)境,將要受到的負(fù)荷壓力以及各種潛在的危險和惡意攻擊的可能性。界面測試系統(tǒng)的前臺為用戶提供了會員注冊,餐品信息瀏覽,網(wǎng)上訂餐,會員信息查看、修改,信息發(fā)布,后臺登陸等功能。1.用戶注冊模塊的測試用戶在登陸框中點擊“注冊”按鈕,進(jìn)入會員注冊頁面。圖5-2為注冊頁面。圖5-2注冊頁面2.會員登錄模塊測試會員登錄測試用例如表5-1所示,會員登錄界面如圖5-3所示表5-1會員測試用例用例標(biāo)識UserLogin項目名稱基于Java的網(wǎng)上訂餐系統(tǒng)開發(fā)人員模塊名稱UserLogin.java用例作者使用信息數(shù)據(jù)庫weborder表user測試類型功能測試設(shè)計日期2010-05-05測試人員測試方法黑盒八、、nTL測試日期2010-05-07用例描述測試會員登錄功能前置條件無編號權(quán)限測試項測試描述/輸入期望真實結(jié)果備注(并列關(guān)類別/操作結(jié)果系)圖5-3用戶登錄3.餐品信息模塊測試會員在登陸框中點擊“登錄”按鈕,并通過數(shù)據(jù)庫驗證,成功進(jìn)入會員登錄的前臺,點擊“餐品信息”進(jìn)入餐品信息頁面,圖5-4為餐品信息頁面。圖5-4餐品信息測試訂餐模塊測試會員在登陸框中點擊“登錄”按鈕,并通過數(shù)據(jù)庫驗證,成功進(jìn)入會員登錄的前臺,點擊“網(wǎng)上訂餐”進(jìn)入會員訂餐頁面,圖5-5會員訂餐測試;會員在登陸框中點擊“游客”按鈕,成功進(jìn)入游客登錄的前臺,點擊“網(wǎng)上訂餐”進(jìn)入游客訂餐頁面,圖5-6游客訂餐測試。此功能測試用例對測試對象的功能測試應(yīng)側(cè)重于所有可直接追蹤到用例或訂餐功能的測試需求。這種測試的目標(biāo)是核實數(shù)據(jù)的接受、處理和檢索是否正確,以及訂餐規(guī)則的實施是否恰當(dāng)。主要測試技術(shù)方法為用戶通過GUI(圖形用戶界面)與應(yīng)用程序交互,對交互的輸出或接受進(jìn)行分析,以此來核實需求功能與實現(xiàn)功能是否一致。表5-2會員訂餐頁面測試用例;表5-3游客訂餐頁面測試用例。表5-2會員訂餐頁面測試用例用例標(biāo)識OrderForUser項目名稱基于Java網(wǎng)上訂餐系統(tǒng)開發(fā)人員模塊名稱OrderForUser.java用例作者參考信息數(shù)據(jù)庫weborder訂單表orderlist測試類型功能測試設(shè)計日期2010-05-05測試人員測試方法黑盒八、、nTL測試日期2010-05-07用例描述測試會員訂餐功能前置條件會員登錄前臺系統(tǒng)編號權(quán)限測試項測試描述/輸入期望真實結(jié)果備注(并列關(guān)類別/操作結(jié)果系)圖5-5會員訂餐表5-3游客訂餐頁面測試用例用例標(biāo)識OrderForVisit項目名稱基于Java網(wǎng)上訂餐系統(tǒng)開發(fā)人員模塊名稱OrderForVisit.java用例作者參考信息數(shù)據(jù)庫weborder訂單表orderlist測試類型功能測試設(shè)計日期2010-05-05測試人員測試方法黑盒八、、nTL測試日期2010-05-07用例描述測試游客訂餐功能前置條件游客登錄前臺系統(tǒng)編號權(quán)限測試項測試描述/輸入期望真實結(jié)果備注(并列關(guān)類別/操作結(jié)果系)圖5-6游客訂餐會員中心測試截圖會員在登陸框中點擊“登錄”按鈕,并通過數(shù)據(jù)庫驗證,成功進(jìn)入會員登錄的前臺,點擊“會員中心”進(jìn)入會員中心頁面,圖5-7為會員信息修改界面;圖5-8為會員查看訂單界面。圖5-7會員信息修改界面圖5-8會員查看訂單界面信息公布模塊測試會員在登陸框中點擊“登錄”按鈕,并通過數(shù)據(jù)庫驗證,成功進(jìn)入會員登錄的前臺,點擊“信息公布”進(jìn)入信息公布模塊,圖5-9會員信息反饋界面;圖510信息發(fā)布頁面。圖5-9信息公布之反饋信息界面圖5-10信息公布之信息發(fā)布界面7.后臺登錄界面測試會員在登陸框中點擊“登錄”按鈕,并通過數(shù)據(jù)庫驗證,成功進(jìn)入會員登錄的前臺,點擊“后臺登錄”進(jìn)入后臺登陸模塊,在輸入正確的管理員名稱和密碼后可以進(jìn)入系統(tǒng)后臺;圖5-11為后臺登錄界面。表5-4為后臺登錄頁面測試用例。圖5-11后臺登錄界面測試表5-4后臺登錄頁面測試用例用例標(biāo)識ManagerLogin項目名稱基于Java的網(wǎng)上訂餐系統(tǒng)開發(fā)人員周黎模塊名稱ManagerLogin.java用例作者參考信息數(shù)據(jù)庫weborder表Admin測試類型功能測試設(shè)計日期2010-05-05測試人員測試方法黑盒八、、nTL測試日期2010-05-10用例描述測試管理員登錄功能前置條件用戶進(jìn)入前臺系統(tǒng)編號權(quán)限測試項測試描述/輸入期望真實結(jié)果備注(并列關(guān)類別/操作結(jié)果系)8.后臺管理頁面界測試管理員進(jìn)入后臺后,增加餐品的測試、刪除訂單的測試、查看反饋信息的測試、修改會員積分的測試如下面界面所示:圖5-12后臺管理之餐品管理測試圖5-13后臺管理之訂單管理測試圖5-14信息管理之反饋信息管理測試圖5-15用戶管理之會員管理測試系統(tǒng)測試和系統(tǒng)設(shè)計是同步的,下面是我的一些測試的經(jīng)驗教訓(xùn)。首先,我們可以運(yùn)行,如果運(yùn)行沒有問題的話,就會有頁面出現(xiàn)。但是,如果代碼有錯誤的話,頁面會出現(xiàn)錯誤的提示。并會告訴你在哪一行出錯及出錯的原因。這樣的話,我們根據(jù)它的提示,可以更改。其次,我們在打開的頁面是正常的,但是不能達(dá)到預(yù)期的效果,這個就需要我們認(rèn)真看代碼了,并根據(jù)我們功能要求對其實現(xiàn)的代碼進(jìn)行分析,通過查閱書籍和網(wǎng)上搜尋資料來解決問題。這個是最難處理的,但是也是鍛煉我們編程能力的捷徑。另外,我們要時刻備份系統(tǒng),避免我們的誤操作對系統(tǒng)的破壞,萬一我們沒有備份過的話,我們以前所做的努力就全部付之東流了。所以,這點是非常重要的。系統(tǒng)維護(hù)系統(tǒng)維護(hù)是為保證系統(tǒng)的正常運(yùn)行和安全保障等而采取的一系列措施,其中包括數(shù)據(jù)庫維護(hù)、信息更新、版面更新、安全測試以及數(shù)據(jù)備份等操作過程;除此之外,如果要公開這個網(wǎng)站,則還包括服務(wù)器和域名空間等的維護(hù)。數(shù)據(jù)庫維護(hù)和信息更新:該階段主要是要求管理員要經(jīng)常對數(shù)據(jù)庫和過期的信息及時地進(jìn)行更新和維護(hù),以保證數(shù)據(jù)庫的正常運(yùn)行和信息的及時性,從而保證了訪問者能夠順利地了解到最新的信息動態(tài)。版面的更新:該過程主要是要求對系統(tǒng)的首頁和頁面定期進(jìn)行相應(yīng)的調(diào)整

溫馨提示

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

評論

0/150

提交評論