網(wǎng)絡(luò)購物系統(tǒng)及其網(wǎng)站設(shè)計與實現(xiàn)_第1頁
網(wǎng)絡(luò)購物系統(tǒng)及其網(wǎng)站設(shè)計與實現(xiàn)_第2頁
網(wǎng)絡(luò)購物系統(tǒng)及其網(wǎng)站設(shè)計與實現(xiàn)_第3頁
網(wǎng)絡(luò)購物系統(tǒng)及其網(wǎng)站設(shè)計與實現(xiàn)_第4頁
網(wǎng)絡(luò)購物系統(tǒng)及其網(wǎng)站設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩69頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

華中師范大學漢口分校

院系名稱:信息科學與技術(shù)學院 專業(yè)名稱:計算機科學與技術(shù)年級:2006級學生姓名:程正雍學號:2006911004指導教師:蔣天發(fā)(教授)定稿日期:2010年5月12日畢業(yè)設(shè)計(論文)任務(wù)書畢業(yè)設(shè)計(論文)題目:網(wǎng)上購物系統(tǒng)的設(shè)計與實現(xiàn)設(shè)計(論文)的基本內(nèi)容:本次設(shè)計將要開發(fā)一個屬于Web信息服務(wù)的子系統(tǒng),它是關(guān)于電子公告系統(tǒng)部分的研發(fā),包括后臺管理系統(tǒng)的總體方案設(shè)計和開發(fā)。在開發(fā)中將選擇JSP+JavaBean+SOLServer2000的模式,以實現(xiàn)應(yīng)用程序邏輯和頁面顯示分離,使界面設(shè)計更簡單。主要功能將有:1、用戶瀏覽商品頁面,自我選擇若干感興趣的商品信息進行查詢;2、用戶發(fā)布購買信息,并對商品訂單進行查看、撤銷、發(fā)貨、完成等處理;3、管理員對商品和訂單進行管理,如新增、刪除、修改及商品的分類等;4、管理員對用戶進行管理;5、一般交流區(qū)和友情鏈接等。畢業(yè)設(shè)計(論文)專題部分:題目:設(shè)計或論文專題的基本內(nèi)容:學生接受畢業(yè)設(shè)計(論文)題目日期第1周指導教師簽字:年月日網(wǎng)上購物系統(tǒng)的設(shè)計與實現(xiàn)摘要隨著社會的不斷發(fā)展,科學技術(shù)也在不斷的更新。Internet作為新型的工具,在90年代便開始用于商業(yè),它的迅速的發(fā)展為商業(yè)界提供了更加廣闊信息平臺與更多的商機,如催化劑一般刺激著商業(yè)經(jīng)濟的快速發(fā)展。因此選擇設(shè)計開發(fā)一個企業(yè)門戶網(wǎng)站擁有重要的意義。本文闡述了網(wǎng)上購物系統(tǒng)的開發(fā)與設(shè)計。設(shè)計采用現(xiàn)在比較流行的JSP網(wǎng)站開發(fā)技術(shù),并考慮到網(wǎng)站所處理的數(shù)據(jù)的結(jié)構(gòu)特點及所學到的知識,應(yīng)用MicrosoftSQLServer2000數(shù)據(jù)庫系統(tǒng)作為網(wǎng)站的后臺數(shù)據(jù)庫。系統(tǒng)實現(xiàn)了網(wǎng)站的基本功能,包括客戶的注冊登錄、瀏覽網(wǎng)站信息、信息查詢、購物并填寫訂單以及管理員對于網(wǎng)站的維護與更新。在頁面設(shè)計與制作中,對于頁面的基本格式,使用HTML語言出大的框架,然后用Dreamweaver8及Eclipse在框架里面做詳細的設(shè)計。結(jié)合這次設(shè)計的意義對Internet在商業(yè)中的應(yīng)用與發(fā)展做一下介紹;然后針對整個系統(tǒng)進行分析,其中包括可行性分析、需求分析、系統(tǒng)的業(yè)務(wù)流程分析、數(shù)據(jù)分析等;在此基礎(chǔ)上確定網(wǎng)站的功能目標,將網(wǎng)站的功能逐次劃分,并細分出子功能模塊;接下來設(shè)計并實現(xiàn)各個模塊,在每個模塊都能完成其功能的結(jié)果下將其綜合成一個完整的系統(tǒng)。關(guān)鍵詞:網(wǎng)上購物;JSP;HTMLDesignandImplementationofInternetShoppingSystemAbstractToday,thesciencetechniquesdevelopveryfast.PeoplevaluedtheE-businessusingthemodernnetworkproceedsthebusinessactivityasthekeypowermoreandmore.TheBusinesstoCustomermodeisoneofthemaintrademodesonthenetofelectroniccommercr.Now,theBusinesstoCustomerfieldisinthestageofthebeginning.Thisisgooddevelopmentforegroundforthemarket.Therefore,itismeaningforustodesignanddeveloptheelectroniccommercewebsite.Thispaperdetaildescribeshowtodevelopanelectroniccommercewebsite.Inthedesign,IusedtheJSPtechnologywhichisverypopularduringthewebsitedeveloper.ConsideredwiththeknowledgethatIhavelearnedandthestructureofthedatethatthewebsitedealwith,IusedMicrosoftSQLserver2000asthebackdatabaseofthewebsite.Thiswebsitesystemhasbasicfunctionsofaenterprisewebsite.Itcanshowustheinformationofthegoods、news、customersthatregisteredonthewebsiteandsoon.Italsocanprovidesthefunctionthatsomecustomersonthewebcanfillinbillswhentheywanttobuythegoods.Thesystemrealizedthequeryfunctionforproductsandthemanagefunctionsforthebackgroundofthesystem..Duringtheprocessofdesigningthewebpage,ImakethemainframebyHTML,anduseDreamweaver8andEclipsetofinishthedetaileddesign.First,ImakeainstructionfortheapplicationanddevelopmentofInternetincommerce,thenanalyzethewholesystem,whichincludesfeasibilityanalyze,requirementanalyze,operationflowanalyzeanddateanalyze.ThenImakethefunctionaimofthiswebsitebaseontheanalysesabove,anddividethefunctionuptoseveralparts.Idesigneverysinglepartofthefunctionparticularly,andfinallyintegratethesesub-functionmodulestoonecompletesystem.Keywords:OnlineMart;JSP;HTML目錄畢業(yè)設(shè)計(論文)任務(wù)書 I摘要 IIAbstract III第1章引言 11.1課題的背景、目的與意義 11.2國內(nèi)外現(xiàn)狀 11.3研究(設(shè)計)內(nèi)容 21.4論文的組織結(jié)構(gòu) 3第2章相關(guān)技術(shù)簡介 52.1JSP技術(shù) 52.2MicrosoftSQLServer2000 52.3Web服務(wù)器 62.4連接數(shù)據(jù)庫與JavaScript 92.5CSS層 9第3章系統(tǒng)分析 113.1可行性分析 113.2需求分析 123.2.1業(yè)務(wù)需求分析 123.2.2用戶需求分析 123.2.3功能需求分析 123.3業(yè)務(wù)流程分析 133.3.1前臺業(yè)務(wù)流程分析 133.3.2后臺業(yè)務(wù)流程分析 143.4數(shù)據(jù)流程分析 143.5運行環(huán)境及開發(fā)工具 15第4章系統(tǒng)總體設(shè)計 174.1系統(tǒng)結(jié)構(gòu)設(shè)計 174.2功能模塊設(shè)計 174.2.1前臺模塊的功能模塊設(shè)計 184.2.2后臺管理模塊的功能模塊設(shè)計 194.3數(shù)據(jù)庫設(shè)計 194.3.1E-R圖 204.3.2基本表設(shè)計 23第5章系統(tǒng)實現(xiàn) 275.1程序設(shè)計 275.2系統(tǒng)頁面的設(shè)計與實現(xiàn) 275.3前臺功能模塊的實現(xiàn) 275.3.1用戶管理模塊 285.3.2用戶資料修改模塊 315.3.3購物車模塊 335.3.4訂單查詢模塊 365.3.5留言板模塊 365.4后臺功能模塊的實現(xiàn) 385.4.1管理員登錄模塊 385.4.2添加商品模塊 395.4.3訂單信息管理模塊 415.4.4查詢用戶信息模塊 425.4.5添加鏈接模塊 43第6章系統(tǒng)調(diào)試與實施 456.1系統(tǒng)測試原理及測試原則 456.1.1系統(tǒng)測試原理 456.1.2系統(tǒng)測試原則 466.2系統(tǒng)測試的方法 466.3本系統(tǒng)測試 47第7章結(jié)論 51參考文獻 52致謝 54引言課題的背景、目的與意義計算機網(wǎng)絡(luò)的出現(xiàn)帶給了世界巨大的變化,從過去只面向?qū)I(yè)部門的信息傳送擴展到現(xiàn)代生活的各個角落,它為世界的發(fā)展和變革做出了無可估量的貢獻。特別是在二十世紀九十年代,美國政府提出“信息高速公路”計劃并付諸于實施以后,網(wǎng)絡(luò)漸漸的從人們極少了解的領(lǐng)域來到了全世界平常人的生活中。在互聯(lián)網(wǎng)日益流行的今天,網(wǎng)絡(luò)是主角,是時代的寵兒。在網(wǎng)絡(luò)大家族中,電子商務(wù)則是一個熱點。電子商務(wù)一個最基本體現(xiàn)就是網(wǎng)上購物,從一定程度上講它就是網(wǎng)上超市,也就是一種網(wǎng)上銷售。“網(wǎng)”字意味著它具有信息時代的快捷方便等特征。事實上電子商務(wù)的出現(xiàn),給消費者的地位,消費觀念帶來了重要的變化。自我國加入WTO后,越來越多的傳統(tǒng)企業(yè)進一步認識到企業(yè)經(jīng)濟發(fā)展的必然趨勢是以網(wǎng)絡(luò)化、全球化為主要特征。而企業(yè)實行電子商務(wù)則成為企業(yè)發(fā)展與國際接軌的必要條件。多年來國家十分重視企業(yè)的信息化建設(shè),并做了大量工作,但目前企業(yè)開始實施信息化的比例還不到20%。所以電子購物網(wǎng)站的實現(xiàn)是一個非常迫切的需求?,F(xiàn)代的網(wǎng)絡(luò),已經(jīng)經(jīng)歷過迅速發(fā)展的時期,他的技術(shù)也已經(jīng)相當成熟。因此,依靠網(wǎng)絡(luò)技術(shù)來架設(shè)一個網(wǎng)站會在很多方面得到相關(guān)的支持。作為信息傳輸?shù)拿浇?,它的高速,海量,及時與可接受的可靠性滿足了現(xiàn)代人們對于需求的渴望?,F(xiàn)在的網(wǎng)絡(luò)對于人們來說,已經(jīng)可以不再是單單獲得信息的意義,更反應(yīng)了現(xiàn)代人生活的理念,更為重要的是成為企業(yè)與政府傳達思想,介紹自身的平臺。因為現(xiàn)代社會愈發(fā)的依賴于網(wǎng)絡(luò),特別是“萬維網(wǎng)”,為企業(yè)或政府量身設(shè)計一個網(wǎng)站被默認為必不可少的事情。國內(nèi)外現(xiàn)狀伴隨著Internet的蓬勃發(fā)展,網(wǎng)絡(luò)購物中心作為電子商務(wù)的一種形式正以其高效、低成本的優(yōu)勢,逐步成為新興的經(jīng)營模式和理念,人們已不再滿足于信息瀏覽和發(fā)布,而是渴望著能夠充分享受網(wǎng)絡(luò)所帶來的更多的便利。的確,客戶足不出戶便可以方便快捷的選購自己喜歡的商品,這正是網(wǎng)絡(luò)購物中心為客戶帶來的好處。敏銳的網(wǎng)絡(luò)商家當然不會錯過這樣絕好的機會,越來越多的網(wǎng)站投身到提供網(wǎng)絡(luò)購物服務(wù)的行列中來,一個基于Internet的全球電子商務(wù)框架正在形成。在美、日等信息化程度較高的國家和地區(qū),網(wǎng)絡(luò)商店發(fā)展速度迅猛,美國的世界級超一流的零售商,如沃爾瑪凱瑪特,家庭倉儲、科羅格、J.C培尼等紛紛擠身于網(wǎng)絡(luò)經(jīng)商的行列。調(diào)查表明:美國的家庭已越來越習慣于在家中從網(wǎng)上購物。

在我國,網(wǎng)上購物從無到有也不過短短幾年時間。我國第一家網(wǎng)上購物發(fā)生在1996年,燕莎友誼商場首次通過網(wǎng)上商城售出一個景泰藍,雖然貨款的支付不是在網(wǎng)上進行的,但這畢竟為我國零售業(yè)奏出了網(wǎng)上購物的先聲。根據(jù)CNNIC的統(tǒng)計結(jié)果,截止2004年1月中國有互聯(lián)網(wǎng)用戶7950萬人,而又有40.7%以上的網(wǎng)民在過去的一年里有過網(wǎng)上購物經(jīng)歷,這就說明中國有網(wǎng)上購物的用戶達是3235.7萬人,并且這一數(shù)字還在以17%左右的速度增長,到2006年中國網(wǎng)上購物用戶將達到6962萬人,這說明在中國發(fā)展網(wǎng)上購物具有良好的群眾基礎(chǔ),網(wǎng)上購物方式日趨被大家所接受。在最近一段時間里,我也查了一些關(guān)于網(wǎng)上購物的信息。有60.4%的網(wǎng)站屬于企業(yè)網(wǎng)站,可見如今企業(yè)都將網(wǎng)站作為推廣自己的重要手段。其次是個人網(wǎng)站。而政府部門的網(wǎng)站占到4.4%。但是,另有調(diào)查顯示,將近75%的企業(yè)的網(wǎng)站每天的點擊率在200次以下,更有51.5%的企業(yè)網(wǎng)站的點擊率不足50次,僅有8.6%的企業(yè)網(wǎng)站的點擊率每天超過1000次。這說明,做好一個網(wǎng)站,做出網(wǎng)站的特色也企業(yè)信息與新聞相結(jié)合來吸引人觀看是一個非常重要的問題。另外,作為信息、新聞傳播的傳統(tǒng)模式的報刊業(yè)也將目光和精力投入到網(wǎng)絡(luò)網(wǎng)站上來。毫無疑問,高速,海量的信息傳輸對報刊業(yè)也是巨大的刺激。2005第五屆中國網(wǎng)絡(luò)媒體論壇中提出到“順應(yīng)數(shù)字化潮流,地方報業(yè)踏上網(wǎng)上之路”。此外,隨著電子時代的迅速發(fā)展,MP3等電子產(chǎn)品已受到廣大的消費群體高度的關(guān)注。生產(chǎn)制造MP3的廠商作為新時代產(chǎn)業(yè)的一個主要部分,當然也會緊隨著時代的發(fā)展來使自己在市場與行業(yè)中更具競爭力。利用電子商務(wù)的模式,在介紹推廣自己的同時,以新的一種渠道銷售自己的產(chǎn)品,也愈發(fā)被關(guān)注。因此,設(shè)計一個具有電子商務(wù)功能的企業(yè)網(wǎng)站具有非常好的開發(fā)與應(yīng)用前景。研究(設(shè)計)內(nèi)容這次設(shè)計實現(xiàn)了一個網(wǎng)上購物網(wǎng)站。網(wǎng)絡(luò)購物中心所承載的信息量大、購物流程比較繁瑣,而且互聯(lián)網(wǎng)中日益肆虐的黑客和病毒對網(wǎng)絡(luò)的安全性提出了更高的挑戰(zhàn)。開發(fā)出的網(wǎng)絡(luò)購物中心系統(tǒng)基于Windows2000Server中文企業(yè)版服務(wù)器和SQLServer2000數(shù)據(jù)庫,采用國際先進的JSP進行開發(fā),具有很高的穩(wěn)定性和安全性。網(wǎng)絡(luò)購物中心真正實現(xiàn)了在Internet上的經(jīng)營銷售,從而使其獲得更大的市場機遇及經(jīng)濟效益,很大程度地提高了企業(yè)的核心競爭力。這個網(wǎng)上購物系統(tǒng)所需要的功能從用戶角度進行劃分,可以分為前臺用戶功能和后臺管理功能。用戶功能主要提供給購物的用戶使用,包括用戶的注冊、登錄,購物車,查看訂單等;后臺管理功能主要提供給系統(tǒng)的管理人員使用,包括對用戶、商品、訂單的管理。用戶注冊后,登陸網(wǎng)站的用戶可以在線查看、訂購產(chǎn)品,并可在論壇中與其他用戶進行交流及提出意見等。這些部分用JSP設(shè)計頁面及連接,使用數(shù)據(jù)庫來建立相關(guān)的表,以便于對其進行查看、修改或刪除。在網(wǎng)站設(shè)計中,管理員完成對網(wǎng)站的維護與管理的工作。使用數(shù)據(jù)庫中權(quán)限的功能對管理員設(shè)置權(quán)限,管理員可以對商品信息進行新增,修改及刪除,也可以對訂單信息進行處理,同時管理員也可以對用戶信息進行管理。論文的組織結(jié)構(gòu)本文分為七章,通過對這個網(wǎng)站的分析、設(shè)計與實現(xiàn)的過程的全面介紹來展示系統(tǒng)的全部特性。第一章緒論描述了課題的背景、目的與意義,介紹了國內(nèi)外現(xiàn)狀,進而總結(jié)出此次研究工作的內(nèi)容。第二章是在系統(tǒng)設(shè)計中的一些相關(guān)技術(shù)簡介。第三章系統(tǒng)分析首先從幾個角度分析了系統(tǒng)開發(fā)的可行性。闡述了系統(tǒng)在實際應(yīng)用中的價值,然后進行了需求分析、網(wǎng)站業(yè)務(wù)流程分析和數(shù)據(jù)流分析。第四章的系統(tǒng)總體設(shè)計在明確了系統(tǒng)設(shè)計原則下,進行了功能模塊設(shè)計。接著進行數(shù)據(jù)庫設(shè)計,首先針對系統(tǒng)中的數(shù)據(jù)設(shè)計出實體間的關(guān)系,然后描述了數(shù)據(jù)庫中基本表的設(shè)計。第五章的系統(tǒng)實現(xiàn)闡述了系統(tǒng)頁面及其邏輯功能的實現(xiàn),重點描述了前臺與后臺的各個功能模塊的實現(xiàn)過程,對主要的原理和技術(shù)進行了詳細的說明,并列出了一些典型的邏輯的程序流程圖進行說明。第六章系統(tǒng)調(diào)試與實施介紹了系統(tǒng)的各項調(diào)試指標,分析了調(diào)試的過程和結(jié)果。第七章結(jié)論分析了系統(tǒng)的一些主要的優(yōu)、缺點,開發(fā)此系統(tǒng)的過程中所遇到的困難。最后是參考文獻和致謝。參考文獻中列出了本次畢業(yè)設(shè)計中所用到的參考資料和文中所引用到的定義與解釋的出處。致謝中對在本次畢業(yè)設(shè)計中給予指導和幫助的老師和同學表示由衷的感謝。相關(guān)技術(shù)簡介JSP技術(shù)本系統(tǒng)采用JSP技術(shù)開發(fā)。因為JSP與同類的CGI、ASP、PHP相比有著獨特的優(yōu)勢。JSP是Sun屬下Javasoft公司推出的技術(shù),使用的Java語言是ASP、PHP和JSP三者中最新的技術(shù)。它以JavaServlet技術(shù)為基礎(chǔ),又在許多方面作了改進,并且充分借鑒了ASP和PHP一些合理的地方。它的平臺無關(guān)性勝過ASP技術(shù),而強大的JDBC數(shù)據(jù)庫接口規(guī)范又優(yōu)于PHP技術(shù),而且JSP技術(shù)是以JAVA語言為基礎(chǔ)的,可以使用JavaBeans組件和自定義標簽,因此具有良好的擴展性??偟膩碚f,JSP業(yè)已成為目前主流的動態(tài)網(wǎng)頁開發(fā)技術(shù)之一。JSP的優(yōu)點如下:(1)借助JSP技術(shù),Web網(wǎng)頁設(shè)計人員可以使用HTML或者XML標記來設(shè)計和風格化Web頁面,使用JSP標記來生成動態(tài)Web頁面。在服務(wù)器端,JSP引擎負責解釋JSP標記和腳本,生產(chǎn)請求的內(nèi)容,然后將結(jié)果以HTML頁面等形式發(fā)送回瀏覽器。這樣開發(fā)者可以保護自己的核心代碼,同時可以保證任何Web瀏覽器的高度兼容性。(2)JSP頁面可借助可重用的、跨平臺的組件(JavaBean),來執(zhí)行Web應(yīng)用所要求的極為復雜的業(yè)務(wù)處理。能夠共享和交換調(diào)用一般操作的組件,或者讓這些組件被別的開發(fā)人員或者開發(fā)團隊所使用。(3)通過開發(fā)定制化的標簽庫等方法,JSP技術(shù)可以支持動態(tài)擴展技術(shù)。(4)作為Java2的一個重要組成部分,JSP技術(shù)能夠支持高度復雜的、基于Web的企業(yè)級應(yīng)用。JSP技術(shù)可以輕松地與現(xiàn)有多種應(yīng)用體系架構(gòu)整合,可以充分利用已有開發(fā)工具和技巧,并擴展到企業(yè)級分布式應(yīng)用環(huán)境。此外,JSP技術(shù)無論是在跨平臺特性、運行效率、企業(yè)級軟件開發(fā)還是商業(yè)支持方面都具有優(yōu)勢,從而使其成為目前和未來進行動態(tài)網(wǎng)頁開發(fā)的最佳工具之一[1]。MicrosoftSQLServer2000這次網(wǎng)站的設(shè)計選用MicrosoftSQLServer2000作為后臺數(shù)據(jù)庫。數(shù)據(jù)庫為db_business。SQLServer2000是一項全面完整的數(shù)據(jù)庫與分析產(chǎn)品。從借助瀏覽器實現(xiàn)的數(shù)據(jù)庫查詢功能到內(nèi)容豐富的擴展標記語言(XML)支持特性均可有力地證明,SQLServer2000為全面支持Web功能的數(shù)據(jù)庫解決方案。與此同時,SQLServer2000還在可伸縮性與可靠性方面保持著多項基準測試紀錄,而這兩方面特性又都是企業(yè)數(shù)據(jù)庫系統(tǒng)在激烈市場競爭中克敵致勝的關(guān)鍵所在。SQLSERVER2000還推出了一組復雜的新安全特性:強大而靈活的基于角色的服務(wù)器、數(shù)據(jù)庫和應(yīng)用程序配置安全性;集成的安全性審核工具可以跟蹤18個不同的安全事件及其子事件;精密的文件和網(wǎng)絡(luò)加密支持,包括SSL(安全套接字層)。SQLServer2000已經(jīng)通過美國政府C2級安全性認證,具備目前業(yè)界最高等級的安全性[6]。對比SQLServer2000和其他的大型數(shù)據(jù)庫管理系統(tǒng),SQLServer2000具有可靠的安全性,更快的存儲速度,高度的兼容性,因此,應(yīng)用SQLServer2000作為后臺數(shù)據(jù)庫為系統(tǒng)的開發(fā)提供了強有力的支持,并對以后軟件的運行提供了堅實的基礎(chǔ)。Web服務(wù)器Web服務(wù)器負責JSP文件的執(zhí)行。目前支持JSPd應(yīng)用服務(wù)器較多,如Tomcat、Resin、Websphere、Weblogic、Jboss等。TomcatTomcat是Apache公司組織開發(fā)飛一種JSP引擎,由于自身具有Web服務(wù)器,可以作為獨立的Web服務(wù)器使用。如今,基于Web的應(yīng)用越來越多,傳統(tǒng)的Html已經(jīng)滿足不了如今的需求。我們需要一個交互式的Web,于是便誕生了各種Web語言。如Asp,Jsp,Php等。當然,這些語言與傳統(tǒng)的語言有著密切的聯(lián)系,如Php基于C和C++語言,Jsp基于Java語言。Tomcat即是一個Jsp和Servlet的運行平臺。Tomcat是一個免費的開源的Serlvet容器,它是Apache基金會的Jakarta項目中的一個核心項目,由Apache,Sun和其它一些公司及個人共同開發(fā)而成。由于有了Sun的參與和支持,最新的Servlet和Jsp規(guī)范總能在Tomcat中得到體現(xiàn)。Tomcat被JavaWorld雜志的編輯選為2001年度最具創(chuàng)新的java產(chǎn)品,可見其在業(yè)界的地位。Tomcat最新版本是4.0x.4.0x與3.x的架構(gòu)不同,而是重新設(shè)計的。Tomcat4.0x中采用了新的Servlet容器:Catalina,完整的實現(xiàn)了Servlet2.3和Jsp1.2規(guī)范。Tomcat提供了各種平臺的版本供下載,可以從上下載其源代碼版或者二進制版。由于Java的跨平臺特性,基于Java的Tomcat也具有跨平臺性。與傳統(tǒng)的桌面應(yīng)用程序不同,Tomcat中的應(yīng)用程序是一個WAR(WebArchive)文件。WAR是Sun提出的一種Web應(yīng)用程序格式,與JAR類似,也是許多文件的一個壓縮包。這個包中的文件按一定目錄結(jié)構(gòu)來組織:通常其根目錄下包含有Html和Jsp文件或者包含這兩種文件的目錄,另外還會有一個WEB-INF目錄,這個目錄很重要。通常在WEB-INF目錄下有一個web.xml文件和一個classes目錄,web.xml是這個應(yīng)用的配置文件,而classes目錄下則包含編譯好的Servlet類和Jsp或Servlet所依賴的其它類(如JavaBean)。通常這些所依賴的類也可以打包成JAR放到WEB-INF下的lib目錄下,當然也可以放到系統(tǒng)的CLASSPATH中,但那樣移植和管理起來不方便。在Tomcat中,應(yīng)用程序的部署很簡單,你只需將你的WAR放到Tomcat的webapp目錄下,Tomcat會自動檢測到這個文件,并將其解壓。你在瀏覽器中訪問這個應(yīng)用的Jsp時,通常第一次會很慢,因為Tomcat要將Jsp轉(zhuǎn)化為Servlet文件,然后編譯。編譯以后,訪問將會很快。另外Tomcat也提供了一個應(yīng)用:manager,訪問這個應(yīng)用需要用戶名和密碼,用戶名和密碼存儲在一個xml文件中。通過這個應(yīng)用,輔助于Ftp,你可以在遠程通過Web部署和撤銷應(yīng)用。當然本地也可以。Tomcat不僅僅是一個Servlet容器,它也具有傳統(tǒng)的Web服務(wù)器的功能:處理Html頁面。但是與Apache相比,它的處理靜態(tài)Html的能力就不如Apache.我們可以將Tomcat和Apache集成到一塊,讓Apache處理靜態(tài)Html,而Tomcat處理Jsp和Servlet.這種集成只需要修改一下Apache和Tomcat的配置文件即可。另外,Tomcat提供Realm支持。Realm類似于Unix里面的group.在Unix中,一個group對應(yīng)著系統(tǒng)的一定資源,某個group不能訪問不屬于它的資源。Tomcat用Realm來對不同的應(yīng)用(類似系統(tǒng)資源)賦給不同的用戶(類似group)。沒有權(quán)限的用戶則不能訪問這個應(yīng)用。Tomcat提供三種Realm,1:JDBCRealm,這個Realm將用戶信息存在數(shù)據(jù)庫里,通過JDBC獲得用戶信息來進行驗證。2:JNDIRealm,用戶信息存在基于LDAP的服務(wù)器里,通過JNDI獲取用戶信息。3:MemoryRealm,用戶信息存在一個xml文件里面,上面講的manager應(yīng)用驗證用戶時即使用此種Realm.通過Realm我們可以方便地對訪問某個應(yīng)用的客戶進行驗證。在Tomcat4中,你還可以利用Servlet2.3提供的事件監(jiān)聽器功能,來對你的應(yīng)用或者Session實行監(jiān)聽。Tomcat也提供其它的一些特征,如與SSL集成到一塊,實現(xiàn)安全傳輸。還有Tomcat也提供JNDI支持,這與那些J2EE應(yīng)用服務(wù)器提供的是一致的。說到這里我們要介紹一下通常所說的應(yīng)用服務(wù)器(如WebLogic)與Tomcat有何區(qū)別。應(yīng)用服務(wù)器提供更多的J2EE特征,如EJB,JMS,JAAS等,同時也支持Jsp和Servlet.而Tomcat則功能沒有那么強大,它不提供EJB等支持。但如果與JBoss(一個開源的應(yīng)用服務(wù)器)集成到一塊,則可以實現(xiàn)J2EE的全部功能。既然應(yīng)用服務(wù)器具有Tomcat的功能,那么Tomcat有沒有存在的必要呢?事實上,我們的很多中小應(yīng)用不需要采用EJB等技術(shù),Jsp和Servlet已經(jīng)足夠,這時如果用應(yīng)用服務(wù)器就有些浪費了。而Tomcat短小精悍,配置方便,能滿足我們的需求,這種情況下我們自然會選擇Tomcat.基于Tomcat的開發(fā)其實主要是Jsp和Servlet的開發(fā),開發(fā)Jsp和Servlet非常簡單,你可以用普通的文本編輯器或者IDE,然后將其打包成WAR即可。我們這里要提到另外一個工具Ant,Ant也是Jakarta中的一個子項目,它所實現(xiàn)的功能類似于Unix中的make.你需要寫一個build.xml文件,然后運行Ant就可以完成xml文件中定義的工作,這個工具對于一個大的應(yīng)用來說非常好,我們只需在xml中寫很少的東西就可以將其編譯并打包成WAR.事實上,在很多應(yīng)用服務(wù)器的發(fā)布中都包含了Ant.另外,在Jsp1.2中,可以利用標簽庫實現(xiàn)Java代碼與Html文件的分離,使Jsp的維護更方便。Tomcat也可以與其它一些軟件集成起來實現(xiàn)更多的功能。如與上面提到的JBoss集成起來開發(fā)EJB,與Cocoon(Apache的另外一個項目)集成起來開發(fā)基于Xml的應(yīng)用,與OpenJMS集成起來開發(fā)JMS應(yīng)用,除了我們提到的這幾種,可以與Tomcat集成的軟件還有很多。Tomcat確實是一個很好的工具,不僅僅因為其免費,功能強大,更因為其開放性。如今,開源軟件越來越收到人們的重視,Linux就是一個成功的典型[11]。ResinResin是目前最流行的支持JSP和Servlet的Web服務(wù)器之一,它被譽為JSP最快的解釋器,而且,目前的Resin可以支持Sun的J2EE,這一點Tomcat暫時是做不到的。Resin對靜態(tài)頁處理能力相對較弱,為了更好的發(fā)揮特性,通常,它都與Apache組合使用,這樣的組合可以架構(gòu)出功能十分強大的站點。WeblogicServerWeblogic是BEA公司開發(fā)的墓前最流行的Web應(yīng)用服務(wù)器之一,它擁有處理關(guān)鍵Web應(yīng)用系統(tǒng)問題所需的性能,具備很高的可擴展性和可用性,而且在與BEAWeblogicCommerceServerTM配合使用時,可為部署適應(yīng)性個性化的電子商務(wù)應(yīng)用系統(tǒng)所需的多種特色和優(yōu)勢:領(lǐng)先的標準全面支持EJB、JSB、JMS、JDBC、XML、和WML。無限的可擴展性包括客戶機的連接共享,資源Pooling以及動態(tài)網(wǎng)頁和EJB組建群集。部署靈活WeblogicServer的特點是與領(lǐng)先的數(shù)據(jù)庫、操作系統(tǒng)和Web服務(wù)器集成。在本次設(shè)計中,選擇使用的是Tomcat服務(wù)器。連接數(shù)據(jù)庫與JavaScriptJDBC(JavaDataBaseConnectivity)是sun公司制定的Java鏈接數(shù)據(jù)庫技術(shù)。在安裝好數(shù)據(jù)庫后JSP并不能直接與數(shù)據(jù)庫連接[8],這里選擇利用第三方JDBC驅(qū)動程序連接數(shù)據(jù)庫。在項目開發(fā)中,如果頻繁在JSP頁面中使用數(shù)據(jù)庫連接函數(shù),釋放函數(shù)進行操作的話,勢必會非常麻煩,而且代碼的冗余量也很大,頁面很多的時候維護也會非常麻煩,頁面上到處都是數(shù)據(jù)庫連接和釋放代碼。因此,可以利用公共數(shù)據(jù)庫訪問連接JavaBean的開發(fā)。通過將數(shù)據(jù)庫連接函數(shù)代碼,釋放函數(shù)代碼等封裝在JavaBean中,可以減少非常多的代碼編程工作,提高代碼可維護性。在加載了JDBC驅(qū)動程序,建立了數(shù)據(jù)庫的URL后,創(chuàng)建一個Condb.java的文件,通過調(diào)用DriverManager類的getConnection方法與db_Business數(shù)據(jù)庫連接。在getConnection方法的實現(xiàn)中,聲明數(shù)據(jù)庫名稱為db_Business。這樣,在其他的Java文件和頁面中聲明調(diào)用或包含了Condb.java文件后,都可以對數(shù)據(jù)庫操作了。JavaScript也叫小腳本語言,是一種基于對象和事件驅(qū)動并具有安全性能的腳本語言,使用它的目的是與HTML超文本標識語言、Java腳本語言一起實現(xiàn)在一個網(wǎng)頁中鏈接多個對象,與網(wǎng)絡(luò)客戶交互作用,從而可以開發(fā)客戶端的應(yīng)用程序。它是通過嵌入或調(diào)入在標準的HTML語言中實現(xiàn)的[9]。CSS層CSS層疊樣式表(CascadingStyleSheet)是一系列格式規(guī)則,它們控制網(wǎng)頁內(nèi)容的外觀。使用CSS可以非常靈活并更好地控制具體的頁面外觀,從精確的布局定位到特定的字體和樣式。并能極大的方便網(wǎng)頁制作的工作[7]。這次設(shè)計中就學習使用了CSS層疊樣式表,在HTML文文檔外部將一系列CSS規(guī)則存儲到一個.CSS文件中。例如創(chuàng)建了一個名為body的選擇器。利用它來統(tǒng)一設(shè)計網(wǎng)站內(nèi)網(wǎng)頁背景及外部框架的樣式。在聲明中規(guī)定了頁面的背景、滾動條的顏色樣式等。還用.br和.wenbenkuang兩個選擇器確定輸出文本框時的樣式。由于CSS已經(jīng)規(guī)定聲明部分中的屬性及其取值范圍,所以對于我這樣初學者的難點就是如何找到合適的屬性來實現(xiàn)頁面設(shè)計。系統(tǒng)分析可行性分析可行性分析是在全面調(diào)查基礎(chǔ)上,針對新系統(tǒng)的開發(fā)是否具備必要性和可能性,對新系統(tǒng)的開發(fā)從技術(shù)、經(jīng)濟、運行的方面進行分析和研究,以避免投資失誤,保證新系統(tǒng)開發(fā)成功。可行性研究的目的就是用最小的代價在盡可能短的時間內(nèi)確定問題是否能夠解決。這部分將從以下四個方面進行研究:技術(shù)可行性、經(jīng)濟可行性、操作可行性和調(diào)度可行性。(1)技術(shù)可行性因為計算機硬件的發(fā)展已經(jīng)越來越快,現(xiàn)在PC機的性能已經(jīng)可以勝任普通網(wǎng)站的web服務(wù)器。購買一臺高性能PC機作為企業(yè)的網(wǎng)站對于這個營銷商來說并不是問題。JSP是Java在Internet/IntranetWeb上的重要應(yīng)用技術(shù),可以和各種Java技術(shù)完好的結(jié)合在一起從而實現(xiàn)非常復雜的應(yīng)用。因此得到了廣泛的支持和承認,成為一種非常流行的網(wǎng)站開發(fā)技術(shù)。利用JSP技術(shù)可以建立先進、安全和跨平臺的動態(tài)網(wǎng)站。鑒于JSP技術(shù)的成熟與廣泛的使用,加以指導老師的幫助可以得到很多的技術(shù)支持。由于在學習數(shù)據(jù)庫時一直以SQLServer作為例子,所以采用MicrosoftSQLServer2000作為數(shù)據(jù)庫的后臺。(2)經(jīng)濟可行性根據(jù)調(diào)查的資料,現(xiàn)在聘用一支團隊設(shè)計并建設(shè)企業(yè)商務(wù)型網(wǎng)站的費用為5300元左右,另外每年交納600元占用網(wǎng)站空間和網(wǎng)站維護費。為了使網(wǎng)站建成后能達到增加企業(yè)經(jīng)濟效益的效果,尋找一支創(chuàng)新與技術(shù)優(yōu)秀的團隊最多需要增加3000元的一次性投資。這樣看來一個成功的網(wǎng)站建成后為這個營銷商帶來的效益將會遠大于成本。但架設(shè)好一個網(wǎng)絡(luò)中的服務(wù)器,以滿足互聯(lián)網(wǎng)中瀏覽者對速度的需求,這樣每年服務(wù)器與網(wǎng)絡(luò)線路和設(shè)備的維護費用將是企業(yè)不得不重點考慮的因素。如何做好經(jīng)濟可行性分析,需要通過仔細的調(diào)查與投資和行業(yè)方面的專業(yè)人士分析。(3)操作可行性如今,計算機與網(wǎng)絡(luò)已經(jīng)非常地普及。特別是在企業(yè)信息化高需求與快速發(fā)展的時代,計算機應(yīng)用已經(jīng)成為企業(yè)員工必備的技能。由于這個課題是以PC機作為服務(wù)器的網(wǎng)站,營銷商可以自己對網(wǎng)站進行操作和管理。需求分析商務(wù)系統(tǒng)隨著中國經(jīng)濟的高速發(fā)展發(fā)生了巨大的變化。專做營銷的中小型企業(yè)隨著百姓個人消費水平的增長迅速成長起來,但同時也帶來了這一行業(yè)激烈的競爭。業(yè)務(wù)需求分析網(wǎng)站的制作已經(jīng)不單單是把企業(yè)想要表達的內(nèi)容擺放在網(wǎng)站上那么簡單,當今的網(wǎng)站設(shè)計包含了更多的設(shè)計元素,給予瀏覽者更多的視覺享受?,F(xiàn)在企業(yè)營銷商需要用一些更新穎更有效的方式增強競爭力。建設(shè)一個宣傳自身商品形象的電子商務(wù)營銷模式的網(wǎng)站是一種有效的方法。另外,通過電子商務(wù)網(wǎng)站,廣闊自己的營銷方式和市場,能夠幫助企業(yè)營銷商從魚龍混雜的市場中脫穎而出,完善企業(yè)銷售與服務(wù)的環(huán)節(jié),最終提升企業(yè)的價值與經(jīng)濟效益。用戶需求分析這個網(wǎng)站以上面的業(yè)務(wù)需求為基礎(chǔ),進一步提出網(wǎng)站需要完成的以下任務(wù):網(wǎng)站需要讓供應(yīng)商、客戶以及瀏覽者能看到商城的信息及動態(tài),另一個重要的內(nèi)容就是能夠顯示出該商城現(xiàn)有的各類型商品及其詳細信息;由于消費者的需求在增長和變化,商城在面對面銷售的基礎(chǔ)上也要隨之發(fā)展出相應(yīng)的服務(wù),如在線訂購等技術(shù)。另外,企業(yè)營銷商除了能與普通客戶一樣瀏覽網(wǎng)站之外,還需要對網(wǎng)站進行管理。企業(yè)需要定期更新現(xiàn)有商品的詳細信息、商城動態(tài)和聯(lián)系方式,必要時還要對企業(yè)的介紹做更改。對于消費者通過網(wǎng)站提交的各種訂單能夠進行處理以方便銷售。功能需求分析根據(jù)上面的需求分析,需要設(shè)計出網(wǎng)站的前臺與后臺。用戶在前臺所瀏覽的內(nèi)容,網(wǎng)站的后臺需要能相應(yīng)的做出更新或修改。根據(jù)以上的想法,設(shè)計出網(wǎng)站的功能:前臺用戶相關(guān)功能主要包括:用戶注冊、登錄;購物車;訂單查詢;個人資料修改;發(fā)布留言。后臺管理相關(guān)功能主要包括:添加商品;處理訂單;查詢用戶信息;添加連接;管理公告信息。將以上這些功能制作成網(wǎng)頁以后,在其中分別互相建立連接,基本完成商城及用戶對網(wǎng)站的要求。業(yè)務(wù)流程分析將上面的需求分析進行歸納。得出網(wǎng)站的兩個業(yè)務(wù)主角,即用戶與管理員。然后制定他們的相關(guān)活動。對應(yīng)網(wǎng)站的功能可以確定,用戶活動對應(yīng)網(wǎng)站前臺業(yè)務(wù)流程;管理員活動對應(yīng)網(wǎng)站的后臺業(yè)務(wù)流程。在對業(yè)務(wù)流程分析中,盡量把業(yè)務(wù)主角的活動考慮全面,使系統(tǒng)的功能盡量完整。前臺業(yè)務(wù)流程分析前臺業(yè)務(wù)主要面向客戶。用戶可以瀏覽網(wǎng)站主頁、商品的介紹和一些服務(wù)信息。前臺業(yè)務(wù)流程如圖3.1所示??蛻羯唐沸畔g覽客戶商品信息瀏覽購物車修改資料查看訂單留言板瀏覽商品清單訂購訂單提交存檔添加留言留言提交修改資料提交存檔存檔圖3.1前臺業(yè)務(wù)流程圖后臺業(yè)務(wù)流程分析在網(wǎng)站設(shè)計中,管理員完成對網(wǎng)站的維護與管理的工作。使用數(shù)據(jù)庫中權(quán)限的功能對管理員設(shè)置權(quán)限,管理員可以對商品及商品分類的信息進行新增,修改及刪除,也可以對訂單信息進行查看、撤銷、發(fā)貨、完成等處理,同時管理員也可以對用戶信息進行管理。流程圖如圖3.2所示。管理員維護網(wǎng)站管理員維護網(wǎng)站取出訂單網(wǎng)站信息提交網(wǎng)站信息存檔受理訂單訂單提交存檔圖3.2后臺業(yè)務(wù)流程圖數(shù)據(jù)流程分析在分析了系統(tǒng)的業(yè)務(wù)流程之后,就要分析系統(tǒng)的數(shù)據(jù)流,為后面設(shè)計網(wǎng)站的數(shù)據(jù)庫做好基礎(chǔ)。這里主要利用數(shù)據(jù)流程圖來說明數(shù)據(jù)流程。數(shù)據(jù)流程圖是一個圖示工具,容易理解,容易在開發(fā)和用戶方之間進行交流,以及在開發(fā)組織內(nèi)部交流。因此數(shù)據(jù)流程圖作為一種模型工具已經(jīng)廣泛使用在軟件工程的實踐中[5]。根據(jù)前臺業(yè)務(wù)流程,可以將用戶的活動分為兩類。用戶瀏覽所使用到的數(shù)據(jù)歸納為站內(nèi)信息,如商品信息等。而用戶提交的訂單則作為網(wǎng)站的訂單數(shù)據(jù)。相應(yīng)的,根據(jù)后臺業(yè)務(wù)流程,管理員對網(wǎng)站內(nèi)容的添加、更新和刪除等所操作的數(shù)據(jù)定義為商城信息。網(wǎng)站數(shù)據(jù)流的總體圖如圖3.3所示。管理員用管理員用戶用戶0網(wǎng)站系統(tǒng)站內(nèi)信息訂單數(shù)據(jù)商城信息圖3.3網(wǎng)站數(shù)據(jù)流的總體圖進一步分析網(wǎng)站的數(shù)據(jù)流程,得到網(wǎng)站數(shù)據(jù)流程的零級圖,如圖3.4所示。用戶用戶站內(nèi)信息管理員更新商品信息更新用戶信息生成訂單顯示信息用戶信息存儲商品信息存儲用戶訂單處理用戶訂單用戶信息訂單內(nèi)容信息商品信息訂單商品的更新數(shù)據(jù)商品信息用戶信息用戶信息處理信息訂單信息存儲處理后的訂單訂單信息圖3.4網(wǎng)站數(shù)據(jù)流的零級圖上面得到的零級圖并不是整個網(wǎng)站數(shù)據(jù)的詳細流程圖。它只是將網(wǎng)站的數(shù)據(jù)流進行了一下分類。例如將商城信息分為了商品信息、分類信息和用戶信息。在零級圖的基礎(chǔ)上還可以將每一個處理的細節(jié)描述出來,從而畫出細節(jié)圖。運行環(huán)境及開發(fā)工具操作系統(tǒng):Windows2000。數(shù)據(jù)庫:SQLServer2000。Web應(yīng)用服務(wù)器:Tomcat5.0。開發(fā)工具:Eclipse3.1.2以上版本,Dreamweaver8。系統(tǒng)總體設(shè)計系統(tǒng)結(jié)構(gòu)設(shè)計根據(jù)業(yè)務(wù)流程,需要將網(wǎng)站劃分為前臺、后臺和數(shù)據(jù)庫。前臺中,客戶在登錄網(wǎng)站主頁后即可鏈接查看到商品等信息,還可以做訂購商品等活動。為了方便客戶搜索感興趣的商品信息,將商品搜索嵌入到主頁面中。數(shù)據(jù)庫將要作為網(wǎng)站后臺重要的組成部分,管理員的主要操作幾乎全部圍繞數(shù)據(jù)庫,最后將更新的數(shù)據(jù)要顯示給前臺。前臺是一個比較大的功能群,它所包含的信息不僅數(shù)量多,而且種類不同。將它設(shè)計成比較優(yōu)化的結(jié)構(gòu)形式能組織好網(wǎng)站的信息內(nèi)容并將其歸類,方便用戶獲得所需要的信息。其中每一部分都以盡量少的內(nèi)容顯示,以免瀏覽者看的眼花繚亂而失去耐心。除了這些作用外,設(shè)計好前臺的結(jié)構(gòu)形式,也是為后面程序的編寫做出了框架。在為系統(tǒng)劃分功能模塊,并以模塊為單位來實現(xiàn)設(shè)計時也是以這個結(jié)構(gòu)為根基的。系統(tǒng)的后臺要對整個網(wǎng)站的信息和數(shù)據(jù)進行維護。網(wǎng)站前臺所顯示的信息在后臺都應(yīng)該有對應(yīng)的維護。這樣,除了設(shè)計后臺的各個管理界面外,為了方便管理員的工作,可以將各個管理的界面結(jié)合到一個頁面中。因此,各個管理的界面會作為主管理界面的分支。在設(shè)計好網(wǎng)站前臺與后臺的結(jié)構(gòu)以后,就將數(shù)據(jù)庫加入到結(jié)構(gòu)中。后臺將更新的數(shù)據(jù)寫入到數(shù)據(jù)庫中,前臺再將數(shù)據(jù)庫中的信息取出來并顯示。功能模塊設(shè)計層次模塊結(jié)構(gòu)是將系統(tǒng)劃分為若干子系統(tǒng),子系統(tǒng)下再劃分為若干的模塊。而模塊是指具備有輸入輸出、邏輯功能、運行程序和內(nèi)部數(shù)據(jù)四種屬性的一組程序。在結(jié)構(gòu)化系統(tǒng)設(shè)計中,模塊一般都是按功能劃分的,通常稱為功能模塊。合理的功能模塊的劃分能夠極大限度地減少重復勞動、提高開發(fā)工作的效率并增大系統(tǒng)的可維護性。以前面的系統(tǒng)分析為基礎(chǔ),將系統(tǒng)分為兩大模塊,即前臺模塊和后臺模塊。網(wǎng)絡(luò)購物中心的功能結(jié)構(gòu)如圖4.1所示。網(wǎng)絡(luò)購物中心后臺部分網(wǎng)絡(luò)購物中心后臺部分前臺部分用戶管理購物車管理訂單管理個人資料管理留言板管理管理員身份驗證商品管理處理訂單用戶信息管理公告信息管理鏈接信息管理圖4.1網(wǎng)絡(luò)購物中心功能結(jié)構(gòu)圖前臺模塊的功能模塊設(shè)計前臺模塊主要為登陸網(wǎng)站的用戶提供商品和服務(wù)的信息,填寫并提交訂單的服務(wù)。這樣,將前臺模塊再細分為用戶管理模塊、訂單查詢模塊、購物車模塊、修改個人資料模塊、留言板模塊。顧名思義,這些模塊的名稱基本概括了它們的功能。下面詳細說明一下這些功能模塊的設(shè)計:(1)用戶管理模塊:為了方便于網(wǎng)站的管理,必須由一套完整的用戶管理體系。該網(wǎng)站用戶管理模塊主要實現(xiàn)用戶的注冊、登錄、找回密碼3方面功能。(2)購物車模塊:在超市購物,可以根據(jù)自己的需要將很多種商品挑選至購物車或購物籃中,然后到收銀臺結(jié)款。而在網(wǎng)上虛擬的商城中,當然沒有辦法使用真正的購物工具,因此,通常都會采用一種被稱為“購物車”的技術(shù)來模擬現(xiàn)實生活。在網(wǎng)上商城中,所選商品須通過購物車進行暫存,然后生產(chǎn)訂單。這種技術(shù)使用起來十分方便,不但可以隨時添加、查看、修改、清空購物車中的內(nèi)容,還可以隨時去收銀臺結(jié)款。(3)訂單管理模塊:用戶提交訂單后,通過產(chǎn)生的訂單號查詢訂單信息及執(zhí)行狀態(tài)。只需要根據(jù)用戶錄入的訂單號在數(shù)據(jù)表中查詢處對應(yīng)的貨品信息即可。(4)個人資料管理模塊:用戶資料修改時為用戶更改個人信息所提供的窗口,為了保護用戶信息部受非法侵害,用戶只有登錄網(wǎng)頁后才有權(quán)限修改個人資料。(5)留言板管理模塊:留言板是一個商務(wù)網(wǎng)站中不可缺少的組成部分,它可以增進用戶與網(wǎng)站之間的交流。在現(xiàn)實網(wǎng)絡(luò)開發(fā)中存在著各種各樣的留言板,但它們都由基于瀏覽留言板及添加留言板2部分組成。這樣,子模塊各自的內(nèi)容基本設(shè)計好。下面可以設(shè)計如何將這些模塊組織在一起,構(gòu)成一個結(jié)構(gòu)比較合理的前臺了。除了在主頁中建立面向其他模塊的鏈接外,也要在其他模塊中建立返回主頁面的鏈接。另外各個模塊間也應(yīng)該互相鏈接起來。后臺管理模塊的功能模塊設(shè)計后臺管理模塊的功能是對站內(nèi)的資源進行管理和維護。以后臺的業(yè)務(wù)流程分析和前臺各個模塊的設(shè)計為基礎(chǔ)、根據(jù)用戶的需求分析來確定后臺管理模塊應(yīng)具有的功能。后臺管理模塊的各個子功能模塊如下:管理員身份驗證模塊:為合法用戶提供一個后臺入口。該模塊的功能是對管理員身份進行能夠驗證。用戶輸入登錄ID和密碼后,系統(tǒng)將判斷登錄ID及密碼的有效性,如果通過驗證則狀態(tài)后臺主頁,反之則提示錯誤。商品管理模塊:向商品表插入前臺首頁展示的商品信息,也就是添加商品信息的功能。處理訂單模塊:網(wǎng)站管理者對用戶訂單的執(zhí)行和編輯狀態(tài)。用戶信息管理模塊:查詢注冊所有用戶,對一些非法或失信用戶進行刪除操作。公告信息管理模塊:網(wǎng)站向用戶發(fā)布最新公告信息。鏈接信息管理模塊:管理員向前臺首頁添加友情鏈接信息。數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫是數(shù)據(jù)庫應(yīng)用程序的重要組成部分。一個設(shè)計結(jié)構(gòu)合理的數(shù)據(jù)庫對于應(yīng)用程序的開發(fā)效率和程序的性能都是非常重要的。數(shù)據(jù)庫的設(shè)計過程大致如下:根據(jù)用戶需求,確定數(shù)據(jù)庫中要保存的數(shù)據(jù)信息。對用戶需求進行分析時數(shù)據(jù)庫設(shè)計的第一個階段。不斷的調(diào)查與研究用戶需求,了解企業(yè)運作流程等系統(tǒng)需求,使設(shè)計概念模型的基礎(chǔ)。設(shè)計數(shù)據(jù)庫的概念模型。概念模型是按用戶的觀點來對數(shù)據(jù)建模,使用與進行信息世界建模的工具。它對整個數(shù)據(jù)庫的設(shè)計具有深刻的影響。邏輯結(jié)構(gòu)設(shè)計。邏輯結(jié)構(gòu)是把概念結(jié)構(gòu)轉(zhuǎn)化為與所采用的數(shù)據(jù)庫管理系統(tǒng)所支持的數(shù)據(jù)模型相符合的過程。數(shù)據(jù)庫的實施和維護。在設(shè)計好前臺與后臺的功能模塊后,就開始進行數(shù)據(jù)庫的設(shè)計了。根據(jù)網(wǎng)站系統(tǒng)的分析,數(shù)據(jù)庫是整個網(wǎng)站的核心。從前臺顯示的信息到后臺操作的對象,都是圍繞數(shù)據(jù)庫展開的。E-R圖E-R圖是一種概念模型。概念模型實際上是現(xiàn)實世界到機器世界的一個中間層次。概念模型用于信息世界的建模,是顯示世界到信息世界的第一層抽象,使數(shù)據(jù)庫設(shè)計人員進行數(shù)據(jù)庫設(shè)計的有利工具,也是數(shù)據(jù)庫設(shè)計人員和用戶之間進行交流的語言,因此概念模型一方面應(yīng)該具有較強的語義表達能力,能夠方便、直接的表達應(yīng)該用眾的各種語義知識,另一方面他還應(yīng)該簡單、清晰并且易于用戶理解[7]。以下是各個數(shù)據(jù)表的實體圖。(1)商品信息表tb_Ware的實體圖商品信息貨物編號商品信息貨物編號發(fā)布時間貨物介紹貨物價格貨物名稱是否推薦圖片路徑貨物類型圖4.2商品信息表tb_Ware的實體圖(2)用戶信息表tb_User的實體圖用戶信息用戶ID用戶信息用戶ID用戶密碼用戶地址用戶名密碼問題真實姓名電子郵箱聯(lián)系電話注冊時間答案圖4.3用戶信息表tb_User的實體圖(3)留言信息表tb_Text的實體圖留言信息主題ID留言信息主題ID電子郵箱主題名稱留言內(nèi)容發(fā)布時間作者姓名圖4.4留言信息表tb_Text的實體圖(4)訂單生成表tb_Sub的實體圖訂單生成信息訂單編號訂單生成信息訂單編號其他運送方式郵編定購日期真實姓名用戶名電子郵箱地址付款方式訂單核對聯(lián)系方式圖4.5訂單生成表tb_Sub的實體圖(5)訂單商品表tb_Shop的實體圖訂單商品信息訂單號訂單商品信息訂單號貨物名稱貨物價格貨物數(shù)量統(tǒng)計圖4.6訂單商品表tb_Shop的實體圖(6)超級鏈接表tb_Link的實體圖超級鏈接信息鏈接名超級鏈接信息鏈接名鏈接網(wǎng)址發(fā)布時間圖4.7超級鏈接表tb_Link的實體圖(7)管理員信息表tb_Admin的實體圖管理員信息管理員ID管理員信息管理員ID管理員名管理員密碼圖4.8管理員信息表tb_Admin的實體圖(8)公告信息表tb_Affiche的實體圖公告信息公告內(nèi)容公告信息公告內(nèi)容公告時間圖4.9公告信息表tb_Affiche的實體圖(9)總體E_R圖用戶購買用戶購買商品n1支付訂單n1發(fā)表留言1n修改用戶信息11圖4.10總體E-R圖基本表設(shè)計表的設(shè)計是這次設(shè)計的一個核心內(nèi)容。根據(jù)前面對網(wǎng)站前臺與后臺功能模塊的分析和對數(shù)據(jù)庫中實體關(guān)系的設(shè)計,可以看到網(wǎng)站中所用到的數(shù)據(jù)信息基本包括:商品信息、用戶信息、留言信息、訂單信息、超級鏈接信息、管理員信息、公告信息等。下面是為數(shù)據(jù)庫設(shè)計的表:商品信息表tb_Ware商品信息表tb_Ware用來保存商品的基礎(chǔ)信息。結(jié)構(gòu)如表4.1所示。表4.1tb_Ware的結(jié)構(gòu)字段名稱數(shù)據(jù)類型長度是否允許空是否為主鍵字段描述WareidInt4否是貨物編號WarenameVarchar50否否貨物名稱WarepriceBigint8否否貨物價格WaretypeVarchar20否否貨物類型WareintroText16否否貨物介紹WareimageVarchar50否否圖片路徑WareifInt4否否是否推薦DattimeDatetime8否否發(fā)布時間用戶信息表tb_User用戶信息表tb_User用來保存用戶信息。表tb_User的結(jié)構(gòu)如表4.2下。表4.2tb_User的結(jié)構(gòu)字段名稱數(shù)據(jù)類型長度是否允許空是否為主鍵字段描述UseridInt4否是用戶IDUsernameVarchar50否否用戶名RnameVarchar40否否真實姓名UserpassVarchar16否否用戶密碼EmailVarchar50否否EmailAddressVarchar80否否用戶地址PhotoVarchar30否否聯(lián)系電話QuestionVarchar50否否密碼問題ResultVarchar50否否答案DattimeDatetime8否否注冊時間留言信息表tb_Text留言信息表tb_Text用來記錄留言信息。表tb_Text的結(jié)構(gòu)如表4.3所示。表4.3tb_Text的結(jié)構(gòu)字段名稱數(shù)據(jù)類型長度是否允許空是否為主鍵字段描述TextidInt4否是主題IDUsernameVarchar20否否作者姓名EmailVarchar50否否EmailDattimeDatetime8否否發(fā)布時間TextnameVarchar50否否主題名稱TextgutText16否否留言內(nèi)容訂單生成表tb_Sub訂單生成表tb_Sub用來記錄新生成的訂單。表tb_Sub的結(jié)構(gòu)如表4.4所示。表4.4tb_Sub的結(jié)構(gòu)字段名稱數(shù)據(jù)類型長度是否允許空是否為主鍵字段描述SubVarchar50否是訂單編號UsernameVarchar20否否用戶名RnameVarchar50否否真實姓名SpdateDatetime8否否訂購日期EmailVarchar50否否EmailAddressVarchar80否否地址PostVarchar50否否郵編PaymentChar12否否付款方式PhotoVarchar30否否聯(lián)系方式CarryVarchar30否否運送方式SpifInt4否否訂單核對OtherText16否否其它訂單商品表tb_Shop訂單商品表tb_Shop用來記錄某一訂單中所定購的商品的詳細信息。表tb_Shop的結(jié)構(gòu)如表4.5所示。表4.5tb_Shop的結(jié)構(gòu)字段名稱數(shù)據(jù)類型長度是否允許空是否為主鍵字段描述SubidVarchar50否否訂單idWarenameVarchar50否否貨物名稱PriceBigint8否否貨物價格WsumBigint8否否貨物數(shù)量WcountBigint8否否統(tǒng)計超級鏈接表tb_Link超級鏈接表tb_Link主要用于記錄調(diào)價的超級鏈接信息。表tb_Link的結(jié)構(gòu)如表4.6所示。表4.6tb_Link的結(jié)構(gòu)字段名稱數(shù)據(jù)類型長度是否允許空是否為主鍵字段描述LnameVarchar50否否鏈接名LaddressVarchar50否否鏈接網(wǎng)址LdatetimeDatetime8否否發(fā)布時間管理員信息表tb_Admin管理員信息表tb_Admin主要用于記錄管理員的信息。表tb_Admin的結(jié)構(gòu)如表4.7所示。表4.7tb_Admin的結(jié)構(gòu)字段名稱數(shù)據(jù)類型長度是否允許空是否為主鍵字段描述IdInt4否否管理員IDAdminVarchar30否否管理員名AdminpassVarchar16否否管理員密碼公告信息表tb_Affiche公告信息表tb_Affiche主要用于記錄后臺調(diào)價的公共信息。表tb_Affiche的結(jié)構(gòu)如表4.8所示。表4.8tb_Affiche的結(jié)構(gòu)字段名稱數(shù)據(jù)類型長度是否允許空是否為主鍵字段描述TestText16否否公告內(nèi)容DattimeDatetime8否否公告時間系統(tǒng)實現(xiàn)在上一章著重討論了系統(tǒng)各個模塊功能的設(shè)計,并詳細分析了每一個模塊的功能。在本章將具體討論如何實現(xiàn)功能模塊,最終實現(xiàn)整個系統(tǒng)。經(jīng)過這個階段的設(shè)計工作,應(yīng)該得出對目標系統(tǒng)的描述,從而在編碼階段可以把這個描述直接翻譯成用JSP網(wǎng)頁設(shè)計語言書寫的程序。程序設(shè)計本系統(tǒng)設(shè)計的網(wǎng)站在設(shè)計過程中包含頁面(HTML)的設(shè)計以及客戶端驗證機制(JavaScript)的設(shè)計。JavaScript也叫小腳本語言,他是一種非常流行的動態(tài)網(wǎng)頁技術(shù)。他不僅能夠?qū)崿F(xiàn)網(wǎng)頁的動態(tài)效果,而且能夠在一定程度上檢測網(wǎng)頁的錯誤,從而在一定程度上實現(xiàn)網(wǎng)站的安全。本系統(tǒng)應(yīng)用服務(wù)器端JSP動態(tài)網(wǎng)頁技術(shù),以及在Serverlet和JavaBean的可重用組件技術(shù)的支持下,結(jié)合客戶端動態(tài)網(wǎng)頁技術(shù)Javascript以及與HTML的無縫結(jié)合的設(shè)計,從而方便系統(tǒng)的實現(xiàn)[10]。系統(tǒng)頁面的設(shè)計與實現(xiàn)如果將網(wǎng)站比作一個人的話,服務(wù)器就像大腦,數(shù)據(jù)庫就像五臟六腑,其內(nèi)嵌的Java和JavaScript組合起來就像是細胞與神經(jīng),而網(wǎng)頁就是這個人的皮肉。網(wǎng)頁將網(wǎng)站的各個組成部分包裹起來,形成易懂并且美觀的外表展示給大家。瀏覽者登陸網(wǎng)站后看到的就是一個個網(wǎng)頁的組合。所以設(shè)計和實現(xiàn)每一個網(wǎng)頁也是非常重要的工作。隨著科技的高速發(fā)展,眾多網(wǎng)頁制作的應(yīng)用軟件應(yīng)運而生。相對于傳統(tǒng)的動態(tài)網(wǎng)頁開發(fā)工具而言,由于繼承了Java語言的許多優(yōu)點,用JSP開發(fā)動態(tài)網(wǎng)站十分方便,開發(fā)效率較高。此外,JSP還具有強大的組件(JavaBean)支持功能,可以方便地實現(xiàn)組件復用,進一步提高了開發(fā)效率。在整個網(wǎng)頁的制作過程中,都是結(jié)合使用HTML語言來實現(xiàn)設(shè)計的。系統(tǒng)的頁面設(shè)計決定了網(wǎng)站的風格,制作好的網(wǎng)站不僅提供給營銷商,更多的要供瀏覽者瀏覽。所以整個網(wǎng)站系統(tǒng)應(yīng)注重的是:易導航性、易操作性和友好的交互界面。因此,網(wǎng)站的設(shè)計最好要簡潔、明了、格調(diào)清新、實用、易于使用和維護。在頁面的風格上應(yīng)保持統(tǒng)一,這里采用CSS樣式表將所有頁面的字體、字號、顏色以及超鏈接的樣式做統(tǒng)一定義。前臺功能模塊的實現(xiàn)整個系統(tǒng)分為了前臺功能模塊和后臺功能模塊。下面詳細討論主要的幾個功能模塊的程序?qū)崿F(xiàn)。在每個模塊的介紹中,將具體說明一些涉及要點。前臺功能模塊分為用戶管理模塊、訂單查詢模塊、購物車模塊、修改個人資料模塊、留言板模塊5個部分。前臺首頁主要有以下幾個部分:(1)網(wǎng)站導航:主要用戶顯示網(wǎng)站的旗幟廣告、各功能模塊導航;(2)用戶登錄:用戶在此注冊、登錄或找回密碼;(3)商品分類搜索:用戶按商品類別進行搜索顯示;(4)銷售排行榜:按照商品的銷售數(shù)量顯示銷售排行信息;(5)商品展示區(qū):按后臺添加商品的時間順序展示商品;(6)友情鏈接:顯示友情鏈接信息;(7)后臺登錄入口:管理員可以通過該入口登錄后臺。首頁運行結(jié)果如圖5.1所示。圖5.1首頁運行結(jié)果用戶管理模塊用戶管理模塊主要實現(xiàn)用戶的注冊、登錄、找回密碼等功能。用戶注冊當用戶第一次登錄時首先要在網(wǎng)站上注冊,成為會員用戶才可以在網(wǎng)站上購物,注冊頁面必須填寫一些用戶的基本信息,如用戶名、密碼、聯(lián)系電話等信息。要注意的是,在用戶注冊頁面user/index.htm中用戶自定義JavaScript檢驗用戶注冊信息不允許為空。用戶注冊頁面user/index.htm如圖5.2所示。圖5.2用戶注冊頁面運行結(jié)果為了便于網(wǎng)站對用戶的管理,在index.htm用戶注冊頁面接收到的注冊信息要經(jīng)過嚴格的過濾,保證注冊用戶名的唯一性,在提交表單后需要對數(shù)據(jù)表中的數(shù)據(jù)進行查詢,如果沒有找到,則在插入數(shù)據(jù)表時提示注冊成功,否則提示此用戶已被占用請重新注冊。用戶注冊的流程圖如圖5.3所示。開始否開始否是是結(jié)束接收注冊信息數(shù)據(jù)是否為空兩次密碼是否一致查詢數(shù)據(jù)庫用戶名是否被占用是否否注冊成功注冊失敗圖5.3用戶注冊系統(tǒng)流程圖2、用戶登錄用戶登錄窗口設(shè)置在首頁上,主要用來接收用戶錄入的用戶名及密碼。單擊“注冊”按鈕時,會提交到user/index.htm頁面執(zhí)行;單擊“登錄”按鈕時,系統(tǒng)將對輸入的用戶名和密碼進行驗證,如果數(shù)據(jù)表中用戶名和密碼存在就顯示登陸成功,并返回首頁,否則彈出錯誤提示信息。用戶登錄的流程圖如圖5.4所示。開始結(jié)束開始結(jié)束接收登錄信息查詢數(shù)據(jù)庫數(shù)據(jù)是否正確否是登錄失敗登錄成功圖5.4用戶登錄系統(tǒng)流程圖3、找回密碼當密碼以外丟失會給用戶帶來不必要的麻煩,重新注冊一個新的用戶即浪費了時間,也浪費網(wǎng)站的資源,如果用戶只記住自己注冊的用戶名及電子郵箱名并提供密碼提示的問題和答案就可以找回密碼。找回密碼頁面user/pass.htm如圖5.5所示。圖5.5找回密碼頁面運行結(jié)果用戶單擊“查找”按鈕,系統(tǒng)會將傷表中所示的數(shù)據(jù)表單提交到user/res.jsp中。user/res.jsp頁用來驗證提交過來的四個條件是否完全符合數(shù)據(jù)庫中的查找條件,只有符合才能顯示密碼結(jié)果,否則彈出“你輸入信息有誤”的提示對話框。用戶資料修改模塊用戶資料修改時為用戶更改個人信息所提供的窗口,用戶只有登錄網(wǎng)頁后才有權(quán)限修改個人資料信息。用戶資料修改模塊在前臺主頁的導航條上,單擊“修改資料”鏈接,進入用戶資料修改頁面,該頁面主要用戶修改用戶信息。用戶資料修改頁面如圖5.6所示。圖5.6用戶資料修改頁面運行結(jié)果個人信息修改完畢后,要將修改后的數(shù)據(jù)信息更新到注冊數(shù)據(jù)表中,單擊“修改”按鈕,如果提交的數(shù)據(jù)無誤,將彈出“數(shù)據(jù)更新成功”的消息對話框;否則將彈出“更新失敗”的消息對話框。用戶資料修改模塊流程圖如圖5.7所示。開始結(jié)束開始結(jié)束接收修改資料信息將信息更新到數(shù)據(jù)庫中更新是否成功否是修改失敗修改成功圖5.7用戶資料修改模塊流程圖購物車模塊購物車模塊中,主要包含以下幾個功能,即:添加購物車、查看購物車、生成訂單和清空購物車。購物車頁運行結(jié)果如圖5.8所示。圖5.8購物車頁面運行結(jié)果添加購物車添加購物車就是把用戶選中的商品暫時存放在購物車中,當用戶在前臺首頁中單擊商品展示區(qū)的“購買”按鈕時,系統(tǒng)會將該商品的詳細信息展示在查看物品清單頁面中。用戶在單擊物品清單頁面下方的“放入購物車”鏈接,便可以將該商品放入購物車中。添加商品的代碼流程是從session中讀取shop對象,如果為空則說明還沒有進行購物或者已經(jīng)清空了購物車,需要新建購物車對象;將商品名稱與購物車列表中的商品名稱對比,如果已經(jīng)存在,則把商品數(shù)量加1。在這段代碼流程中,還使用了集合類型。集合類型在Java中又稱為向量,是一元集合,可以加入重復數(shù)據(jù),它的作用和數(shù)組相同,可以保存一系列數(shù)據(jù),但集合類型也有它獨特的優(yōu)點,就是可以方便地對集合內(nèi)的數(shù)據(jù)進行查找、增加、刪除和修改等操作。查看購物車為了方便用戶隨時查看購物情況,在網(wǎng)站的首頁加入了查看購物車的鏈接,通過它可以將用戶所有選中的商品信息放入購物車中顯示出來。在程序中使用了一組文本框記錄用戶購買的商品數(shù)量,用戶可以在文本框中輸入想要購買的數(shù)量然購單擊“修改”按鈕。如果欲刪除該商品,可以在數(shù)量文本框里輸入“0”,并需要單擊“修改”按鈕來更新購物車中商品的數(shù)量。系統(tǒng)每次只會將1個商品放入購物車中,如果用戶需要多個同種商品,可以通過修改商品信息右側(cè)相應(yīng)文本框的值來完成。操作完成后需要通過單擊“修改”按鈕來保存操作。生成訂單生成訂單時網(wǎng)上購物商城的最終目的,前面所有功能的實現(xiàn)都是為最后生成一個用戶滿意的訂單作基礎(chǔ),在此要生成一個可供用戶隨時查詢的訂單號,還要保存用戶訂單中所購買的商品信息。當用戶確認對購物車不再改變以后,就可以到收銀臺結(jié)帳并生成訂單。結(jié)帳的流程為:從購物車中讀取商品名稱,商品數(shù)量,商品價格信息,生成一個唯一的訂單號,同時也把用戶注冊的基本信息讀取出來,形成一個完整的訂單寫入數(shù)據(jù)庫。在生成訂單模塊中主要使用了調(diào)出用戶信息并生成唯一訂單號,調(diào)出用戶信息就是完全的對數(shù)據(jù)庫進行操作,利用session對象把登錄后的用戶名保存起來,在訂單生成時把保存的用戶名從數(shù)據(jù)庫的用戶標中取出即可;生成唯一訂單號方法有很多,只要確保訂單號碼的唯一性及方便用戶記錄以便于查詢自己訂單的執(zhí)行狀態(tài)即可。訂單生成后,用戶單擊“提交”按鈕,便可以將錄入的訂單信息保存到數(shù)據(jù)庫中。清空購物車清空購物車是指當用戶訂單生成后,倘若還想繼續(xù)購物一定要清空購物車再進行選購商品,這樣防止重復購物,其實清空購物車實現(xiàn)起來非常簡單,只需要將session中存儲的shop對象清空即可。購物車模塊流程圖如圖5.9所示。開始查詢數(shù)據(jù)庫開始查詢數(shù)據(jù)庫數(shù)據(jù)是否存在顯示商品的信息是是否放入購物車購物車是否為空是沒有該商品否否購物車中已存在該商品新建購物車該商品數(shù)量加1將商品添加入購物車是否顯示購物車信息是否修改商品數(shù)量否是否清空購物車是刪除購物車中商品是是否繼續(xù)購物否是否去收銀臺接收填寫的訂單信息數(shù)據(jù)是否為空訂單信息存入數(shù)據(jù)庫更新是否成功是否是否是修改商品數(shù)量是結(jié)束否否否圖5.9購物車模塊流程圖訂單查詢模塊用戶提交訂單后,通過產(chǎn)生的訂單號查詢訂單信息及執(zhí)行狀態(tài)。用戶在購物中心首頁中單擊“訂單查詢”超鏈接,就可以進入輸入訂單號頁面,在頁面的文本框中輸入訂單號并單擊“提交”按鈕,如果訂單號輸入無誤,系統(tǒng)將根據(jù)用戶錄入的訂單號在數(shù)據(jù)表中查詢處對應(yīng)的貨品信息并轉(zhuǎn)到訂單查詢顯示頁面將貨品信息顯示出來。訂單查詢模塊流程圖如圖5.10所示。開始結(jié)束開始結(jié)束接收訂單號信息查詢數(shù)據(jù)庫訂單號是否存在否是顯示出訂單信息無該訂單號圖5.10訂單查詢模塊流程圖留言板模塊留言板模塊由瀏覽留言板和添加留言板兩部分組成。下面分別對這兩部分進行介紹。1、瀏覽留言板單擊網(wǎng)站首頁的“留言板”超鏈接進入留言板頁面,在該頁面中,主要顯示用戶所填寫的留言,以便其他用戶查閱。留言板中顯示的數(shù)據(jù)是從數(shù)據(jù)表中檢索出來并顯示在網(wǎng)頁中的,為了方便查看網(wǎng)頁信息,使用了分頁顯示功能。對網(wǎng)頁進行分頁顯示首先要確定記錄跨度,就是每頁所顯示的記錄數(shù),在這個網(wǎng)站的留言板中,設(shè)定了intpagesize=4,即每頁中只允許顯示4條留言信息,用戶可以通過單擊“上一頁”、“下一頁”、“最后一頁”、“第一頁”或則從文本框中鍵入一個數(shù)值跳轉(zhuǎn)到相應(yīng)頁瀏覽留言信息。記錄的總條數(shù)可以從數(shù)據(jù)庫中通過查詢語句rs.last();rowcount=rs.getRow得到,而計算總頁數(shù)時,根據(jù)總頁數(shù)=總記錄數(shù)/跨度,如果除不盡就加1的原理,設(shè)計代碼為:pagecount=((rowcount%pagesize)==0?(rowcount/pagesize);(rowcount/pagesize)+1)。如果獲取文本框中的數(shù)據(jù)不為空就把它轉(zhuǎn)換成整型數(shù)據(jù),然后賦值給當前獲取頁再做進一步判斷;如果獲取的頁數(shù)大于總頁數(shù)就把總頁數(shù)賦給獲取頁數(shù),否則就把獲取頁數(shù)值賦為1。而計算當前記錄數(shù)時,當前記錄數(shù)=(獲取頁數(shù)-1)*跨度+1。代碼如下所示。intshowpage=1; if(topage!=null){ showpage=Integer.parseInt(topage); if(showpage>pagecount){ showpage=pagecount; }elseif(showpage<=0){ showpage=1; } }rs.absolute((show1)*pagesize+1);有了以上這幾個關(guān)鍵變量,網(wǎng)頁分頁顯示功能基本上已經(jīng)實現(xiàn)了,下一步就是在當前記錄數(shù)位置開始循環(huán),當數(shù)據(jù)庫沒有記錄的時候一定要終止循環(huán)程序。代碼如下:for(inti=1;i<=pagesize;i++){……if(!rs.next()) break;}2、添加留言添加留言是用戶與用戶,以及用戶與網(wǎng)站之間的一種交流模式,只有把用戶想要表達的內(nèi)容添加至數(shù)據(jù)庫中,才能在瀏覽留言板中進行顯示。用戶在留言板中單擊“添加留言”超鏈接就可以打開添加留言頁面,該頁面主要用來提交用戶輸入的留言信息。用戶在添加留言頁中單擊“提交”按鈕,系統(tǒng)會將數(shù)據(jù)表單提交到admin/addle.jsp頁,該頁用來實現(xiàn)江留言內(nèi)容存入到數(shù)據(jù)庫中。留言板模塊的流程圖如圖5.11所示。開始結(jié)束開始結(jié)束接收添加的留言信息信息存入數(shù)據(jù)庫數(shù)據(jù)是否為空是否添加留言成功存放是否成功是否添加留言失敗查詢數(shù)據(jù)庫數(shù)據(jù)庫是否為空是否顯示留言信息留言板中沒有信息圖5.11留言板模塊流程圖后臺功能模塊的實現(xiàn)后臺功能只允許具有管理員權(quán)限的用戶使用,它是實現(xiàn)前臺功能的基礎(chǔ)。后臺包括管理員身份驗證、添加商品模塊、訂單信息管理模塊、查詢用戶信息管理模塊、添加鏈接模塊、公告信息管理模塊。后臺首頁主要有以下幾個部分。(1)后臺導航區(qū):放置管理員可操作項目的鏈接;(2)操作區(qū):顯示所有后臺導航的鏈接信息。管理員登錄模塊在前臺首頁單擊管理員入口,將轉(zhuǎn)到管理員登錄頁面,該頁面的功能是對管理員身份進行驗證。在管理登錄頁面中,是通過JavaScript來實現(xiàn)錄入數(shù)據(jù)完整性驗證的。用戶輸入登錄ID和密碼后單擊“登錄”按鈕時,如果錄入數(shù)據(jù)完整性驗證通過,系統(tǒng)會將數(shù)據(jù)提交到Acheck.jsp登錄頁面,該頁面用來判斷輸入信息在數(shù)據(jù)庫中tb_Admin表是否存在提交的用戶名和密碼,如果登錄ID及密碼有效,就保存用戶名信息,管理員有權(quán)對網(wǎng)站進行維護;反之則提示錯誤。登錄頁面如圖5.12所示。圖5.12管理員登錄頁面運行結(jié)果流程圖如圖5.13所示。開始否開始否是是結(jié)束接收登錄信息數(shù)據(jù)是否為空數(shù)據(jù)是否有效查詢數(shù)據(jù)庫否登錄成功圖5.13管理員登錄系統(tǒng)流程圖添加商品模塊單擊導航區(qū)中的“添加商品”超鏈接,系統(tǒng)將打開添加商品頁面,該頁面主要用于將商品信息添加到數(shù)據(jù)庫中,以提供前臺首頁商品展示所需要的數(shù)據(jù)依據(jù)。用戶單擊“添加”按鈕后添加商品如圖5.14所示。圖5.14添加商品信息頁面運行結(jié)果為了減少人為錯誤,在提交商品信息時,需要對數(shù)據(jù)的合法性進行驗證,輸入的商品價格不能使字符型,而輸入的圖片只支持Gif格式等,這些任務(wù)由腳本語言JavaScript的函數(shù)check()來完成。代碼如下。 functioncheck(){…… if(form1.image.value==""){ alert("請輸入展示圖片的路徑"); form1.image.focus(); returnfalse; } if(isNaN(form1.wareprice.value)){ alert("商品價格輸入不正確"); form1.wareprice.focus(); returnfalse; }為了確保商品在數(shù)據(jù)表中的唯一性,在用戶提交表單時,需要先根據(jù)用戶輸入的商品名稱對數(shù)據(jù)表進行查詢,確保此商品在數(shù)據(jù)表中不存在后,方可執(zhí)行插入操作。這一功能由admin/wcheck.jsp來完成。流程圖如圖5.15所示。開始結(jié)束開始結(jié)束接收商品信息查詢數(shù)據(jù)庫數(shù)據(jù)是否為空是否信息插入數(shù)據(jù)庫是否重復錄入是否數(shù)據(jù)是否正確否是插入是否成功是否添加商品失敗添加商品成功圖5.15添加商品信息模塊流程圖訂單信息管理模塊用戶在前臺購物所產(chǎn)生的訂單并不能立即執(zhí)行,需要系統(tǒng)管理員在后臺進行訂單信息管理審核以確認它的執(zhí)行性。用戶單擊導航區(qū)中的“訂單信息管理”超鏈接進入用戶訂單處理頁面,該頁面上會顯示近期所有沒被處理的訂單。用戶訂單處理頁面顯示的是用戶基本信息,要想知道訂單中所涉及的商品,需要單擊對應(yīng)訂單號的超鏈接打開商品訂購詳單頁面才行。商品訂購詳單主要通過提交的訂單號從tb_Shop表中查詢處對應(yīng)的商品并顯示在頁面中,管理員審核后可通過復選框來設(shè)置訂單是否執(zhí)行。程序中利用admin/shop.jsp來完成這些功能。當選中“是/否”復選框時,系統(tǒng)會根據(jù)提交的訂單號更新數(shù)據(jù)表,如果更新成功,則轉(zhuǎn)到spif.jsp也執(zhí)行。流程圖如圖5.16所示。開始是開始是否查詢數(shù)據(jù)庫是結(jié)束否顯示全部未處理的訂單信息是否刪除訂單數(shù)據(jù)庫是否為空更新數(shù)據(jù)庫更新數(shù)據(jù)庫是否成功刪除訂單成功沒有未處理的訂單是否查看訂購詳單是否執(zhí)行否更新數(shù)據(jù)庫更新是否成功是是否訂單執(zhí)行成功圖5.16訂單信息管理模塊流程圖查詢用戶信息模塊查詢用戶信息模塊用來完成對注冊用戶的瀏覽及刪除功能。如果用戶蓄意性注冊或者在很長時間內(nèi)沒有訂單產(chǎn)生,管理員就可以將該用戶信息刪除。單擊導航區(qū)中的“查詢用戶信息”超

溫馨提示

  • 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

提交評論