版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
東華理工大學系統(tǒng)設(shè)計(報告)網(wǎng)上圖書銷售系統(tǒng)PAGEPAGE3東華理工大學第1頁共26頁系統(tǒng)分析設(shè)計報告網(wǎng)上圖書銷售系統(tǒng)年級:專業(yè):計算機信息管理學號:姓名:指導老師:丁木華、劉愛華、吳志強摘要伴隨著Internet的迅速發(fā)展,電子商務(wù)將成為21世紀主流的商業(yè)模式之一。網(wǎng)上書店是隨著計算機技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展而出現(xiàn)的一種新型圖書銷售渠道。依靠計算機網(wǎng)絡(luò),以通訊技術(shù)為基礎(chǔ),實現(xiàn)圖書銷售的網(wǎng)上交易。網(wǎng)上書店同傳統(tǒng)的店面書店相比,網(wǎng)上書店的經(jīng)營方式和銷售渠道是全新的;它24小時的全天候和全方位服務(wù)是傳統(tǒng)書店所不能比及的,成本低廉更是開設(shè)網(wǎng)上書店的主要原因。而與其他商品相比,書籍運送幾乎不怕碰撞碎裂,不具時效性,同時書本具有功能單一,形式簡單,易于判斷和選擇而獨具優(yōu)勢,最適合于網(wǎng)上交易;再次是單價低,降低了消費者第一次在網(wǎng)絡(luò)購物的門檻,所以網(wǎng)上書店成了電子商務(wù)的先鋒。本文首先簡述網(wǎng)上購書的歷史背景,接著陳述了設(shè)計的原理和設(shè)計所采用的工具,工具包括JSP、DreamweaverMX、MicrosoftSQL2000、JavaScript;首先對系統(tǒng)進行需求分析,得出了購書系統(tǒng)的結(jié)構(gòu)圖,然后接著詳細的描述實現(xiàn)了一個網(wǎng)上書店全程購物系統(tǒng)解決方案。[關(guān)鍵詞]電子商務(wù);電子書店;JSP;DreamweaverMX
第一章緒論1.1引言隨著Internet國際互聯(lián)網(wǎng)的發(fā)展,越來越多的企業(yè)開始建造自己的網(wǎng)站?;贗nternet的信息服務(wù),商務(wù)服務(wù)已經(jīng)成為現(xiàn)代企業(yè)一項不可缺少的內(nèi)容。很多企業(yè)都已不滿足于建立一個簡單的僅僅能夠發(fā)布信息的靜態(tài)網(wǎng)站?,F(xiàn)代企業(yè)需要的是一個功能強大的,能提供完善的電子商務(wù)服務(wù)的動態(tài)商務(wù)網(wǎng)站。同時人們的生活方式也在隨著發(fā)生改變,傳統(tǒng)的購物方式已不能滿足人們的需求。JSP是Sun公司推出的一種網(wǎng)站開發(fā)技術(shù),Sun公司借助自己在Java上的不凡造詣,又把人們引進JSP時代,JSP即JavaServerPage,它可以在Servlet和JavaBean的支持下,完成功能強大的Web應用程序。所以,在我的畢業(yè)設(shè)計中,我采用了JSP作為開發(fā)工具,構(gòu)建了一個能實現(xiàn)基本的電子商務(wù)的小型動態(tài)商務(wù)網(wǎng)站——網(wǎng)上圖書銷售系統(tǒng)。該系統(tǒng)能實現(xiàn)用戶的注冊、登錄功能;能夠?qū)崿F(xiàn)商品的查詢,訂購等功能。該系統(tǒng)基本上具備一個網(wǎng)上商品銷售系統(tǒng)應該具備的常用功能,該設(shè)計項目基本上體現(xiàn)了構(gòu)建一個動態(tài)商務(wù)網(wǎng)站所需要的技術(shù),可以說,目前的大型商務(wù)網(wǎng)站也就是我們這個小型網(wǎng)站在內(nèi)容上的擴充和完善。1.2概述隨著時代的發(fā)展,信息技術(shù)、Internet/Intranet技術(shù)、數(shù)據(jù)庫技術(shù)的不斷發(fā)展完善,網(wǎng)絡(luò)進程的加快,傳統(tǒng)的購物方式也越來越不能滿足人們快節(jié)奏的生活需求,使得企業(yè)的IT部門已經(jīng)認識到Internet的優(yōu)勢,電子商務(wù)就是在這樣一個背景下產(chǎn)生發(fā)展起來的。伴隨著電子商務(wù)技術(shù)的不斷成熟,電子商務(wù)的功能也越來越強大,注冊用戶可以在網(wǎng)上搜索購買到自己想要的各種商品,初步讓人們體會到了足不出戶,便可隨意購物的快感。我的畢業(yè)設(shè)計也就正是一個電子商務(wù)系統(tǒng)的開發(fā)網(wǎng)上圖書銷售系統(tǒng)。第二章系統(tǒng)分析2.1可行性分析商業(yè)企業(yè)在運營過程中,經(jīng)常會受到以下一些條件的限制:產(chǎn)品的宣傳受到限制,采購商或顧客只能通過上門咨詢、電話溝通等方式進行各種信息的獲取,受一定的時間與物理空間的局限并且成本較高。龐大的商業(yè)經(jīng)濟周轉(zhuǎn)。復雜的產(chǎn)品周轉(zhuǎn)渠道。從看樣品、談價格到支付貨款等一系列的產(chǎn)品周轉(zhuǎn)渠道過于復雜,企業(yè)與顧客之間缺乏全面的溝通與快捷運營的平臺。商業(yè)企業(yè)中根據(jù)季節(jié)的變化,熱銷商品在銷售高峰到來時貨源緊張,企業(yè)需要實時了解商品的銷售情況,保證熱銷商品的要貨滿足率。因此,企業(yè)需要重新認識市場、消費者以及自身市場定位,正確認識電子商務(wù)技術(shù)在企業(yè)中的重要地位,以少量的時間和資金建立企業(yè)信息門戶網(wǎng)站并架設(shè)一定范圍的商務(wù)網(wǎng)絡(luò),以此來制定長遠發(fā)展戰(zhàn)略,使企業(yè)與顧客間的經(jīng)濟活動變得更靈活、更主動。本系統(tǒng)是一個中小型的電子商務(wù)系統(tǒng)網(wǎng)上書店,可以為各類用戶提供方便的在線買書環(huán)境,符合目前國內(nèi)流行的電子商務(wù)模式。用戶可以在系統(tǒng)中實現(xiàn)注冊、瀏覽商品、搜索查詢商品、下定單、處理定單等功能;管理員可以通過用戶管理、定單管理、商品管理、評論管理等管理功能來對系統(tǒng)進行維護更新。在技術(shù)上,目前市場上開發(fā)電子商務(wù)平臺的技術(shù)很多,如ASP,PHP,PB,.NET等。我采用SUN公司的JSP技術(shù),它是目前市場上最流行的技術(shù)之一,JSP具有一次編譯,處處運行的優(yōu)點[4]。由分析可得,不論是商業(yè)還是技術(shù)上,網(wǎng)上圖書銷售系統(tǒng)的開發(fā)都是可行的。2.2需求分析通過對電子商務(wù)網(wǎng)站及網(wǎng)上書店的考察、分析以及實際的市場調(diào)查,要求本系統(tǒng)具有以下功能:統(tǒng)一友好的操作界面,能保證系統(tǒng)的易用性。規(guī)范、完善的基礎(chǔ)信息設(shè)置。圖書分類詳盡,可按不同類別查看商品信息。按圖書大類及圖書名稱進行模糊查詢。實現(xiàn)網(wǎng)上購書。新書及特價圖書展示。第三章概要設(shè)計3.1系統(tǒng)設(shè)計目標對于典型的數(shù)據(jù)庫管理系統(tǒng),尤其是對像電子商務(wù)這樣的數(shù)據(jù)流量特別大的網(wǎng)絡(luò)管理系統(tǒng),必須要滿足使用方便、操作靈活等設(shè)計要求。本系統(tǒng)在設(shè)計時應該滿足以下幾個目標:采用人機對話的操作方式,界面設(shè)計美觀友好、信息查詢靈活、方便、快捷、準確、數(shù)據(jù)存儲安全可靠。全面展示書店內(nèi)所有的圖書,并可展示最新圖書及特價圖書。為顧客提供一個方便、快捷的圖書信息查詢功能。采用模糊查詢查詢數(shù)據(jù)。實現(xiàn)網(wǎng)上購物。商品銷售排行,以方便顧客了解本商城內(nèi)的熱銷商品及幫助企業(yè)領(lǐng)導者做出相應的決策。查看商城內(nèi)的公告信息。用戶隨時都可以查看自己的訂單。對用戶輸入的數(shù)據(jù),系統(tǒng)進行嚴格的數(shù)據(jù)檢驗,盡可能排除人為的錯誤。系統(tǒng)最大限度地實現(xiàn)了易維護性和易操作性。系統(tǒng)運行穩(wěn)定、安全可靠。3.2系統(tǒng)設(shè)計思想本系統(tǒng)采用三層架構(gòu)設(shè)計,它的工作原理如圖3.1所示。圖3.1三層結(jié)構(gòu)原理圖采用三層構(gòu)架以后,用戶界面層通過統(tǒng)一的接口向業(yè)務(wù)層發(fā)送請求,業(yè)務(wù)層按自己的邏輯規(guī)則將請求處理之后進行數(shù)據(jù)庫操作,然后將數(shù)據(jù)庫返回的數(shù)據(jù)封裝成類的形式返回給用戶界面層。這樣用戶界面層甚至可以不知道數(shù)據(jù)庫的結(jié)構(gòu),它只要維護與業(yè)務(wù)層之間的接口即可。3.3系統(tǒng)功能模塊劃分根據(jù)需求分析及三層架構(gòu)設(shè)計的思想,設(shè)計出客戶系統(tǒng)功能如圖3.2用戶登錄用戶登錄在線購書在線購書用戶注冊登陸察看圖書詳細購買圖書查詢察看訂單信息查看購物車在線購書用戶注冊登陸察看圖書詳細購買圖書查詢察看訂單信息查看購物車在線購書購買察看圖書詳細資料購買查看訂單詳細繼續(xù)購書清空購物車提交購物車刪除已經(jīng)選購的圖書修改購買數(shù)量購買察看圖書詳細資料購買查看訂單詳細繼續(xù)購書清空購物車提交購物車刪除已經(jīng)選購的圖書修改購買數(shù)量圖3.2客戶端系統(tǒng)管理員登陸管理員登陸用戶管理現(xiàn)有圖書管理添加新圖書添加圖書分類訂單管理用戶管理查看圖書資料修改圖書資料刪除圖書添加新圖書添加圖書分類刪除圖書分類查看訂單詳細資料刪除訂單查看用戶資料刪除用戶查看用戶詳細資料修改用戶資料圖3.3后臺管理系統(tǒng)功能圖3.4系統(tǒng)結(jié)構(gòu)設(shè)計根據(jù)面向?qū)ο蠛腿龑咏Y(jié)構(gòu)設(shè)計的思想,可得出如圖3.4所示的系統(tǒng)結(jié)構(gòu)設(shè)計圖。在線書店客戶端界面管理端界面JavaBean數(shù)據(jù)庫在線書店客戶端界面管理端界面JavaBean數(shù)據(jù)庫在購書界面圖書管理模塊訂單管理圖書管理用戶管理購物車界面定單信息管理登陸/注冊添加圖書模塊添加圖書分類模塊訂單信息模塊客戶管理模塊登陸模塊圖書分類類圖書類圖書分類管理類圖書管理類訂單類訂單管理類購物車類購物車管理類用戶類用戶管理類用戶登錄類3.5系統(tǒng)功能簡介3.5.1系統(tǒng)基本功能1)圖書信息查詢該模塊實現(xiàn)圖書信息的分類顯示,提供最新商品的推薦顯示以及銷售顯示,便于引導購物取向。此外,還提供依據(jù)圖書名稱或是編號等包含關(guān)鍵字實現(xiàn)快速搜索的功能并顯示圖書的有關(guān)詳細信息。2)購物車管理用于對每一個進入系統(tǒng)的用戶所對應的購物車進行管理。將用戶所選購的圖書信息,包括價格、數(shù)量等信息記錄到對應的購物車上,便于到收銀臺進行結(jié)帳處理。同時在此模塊中,用戶還可以方便的實現(xiàn)修改購物圖書、清空購物車等操作。3)會員信息管理實現(xiàn)系統(tǒng)相關(guān)用戶信息的注冊及身份驗證,同時也提供對應的用戶資料的更新。該系統(tǒng)可以收集用戶相關(guān)的聯(lián)系方式、通訊地址等信息,可以更好的拓展銷售規(guī)模。4)訂單處理根據(jù)購物車中的信息,以及用戶所選擇的送貨方式和付款方式,和用戶對應的個人信息生成訂單,便于后續(xù)工作的處理。在該模塊中,用戶可以隨時查閱自己的訂單,并對其進行取消等處理操作。3.6數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫在一個信息管理系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫結(jié)構(gòu)設(shè)計的好壞將直接對應用系統(tǒng)的效率,以及實現(xiàn)的效果產(chǎn)生影響。合理的數(shù)據(jù)庫結(jié)構(gòu)設(shè)計可以提高數(shù)據(jù)存儲的效率,保證數(shù)據(jù)的完整和一致3.6.1數(shù)據(jù)庫需求分析針對網(wǎng)上圖書銷售系統(tǒng)的需求分析,得出如下需求信息。訂單分為單張詳細訂單和總訂單。一個用戶可以購買多本圖書。一個用戶對應一張訂單。一個列表對應多張訂單。針對本系統(tǒng)功能分析,總結(jié)出如下的需求信息。用戶,包括數(shù)據(jù)項:用戶ID、用戶名、密碼。圖書,包括數(shù)據(jù)項:圖書編號、圖書名、價格、圖書介紹。訂單列表,包括數(shù)據(jù)項:訂單編號、圖書編號、購書數(shù)量。訂單,包括數(shù)據(jù)項:訂單編號、用戶編號、下單時間。3.6.2數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計從本系統(tǒng)中規(guī)劃出的實體有:用戶信息實體、管理員信息實體、圖書實體、圖書分類實體、訂單實體、訂單列表實體。實體之間關(guān)系的E-R圖如圖4.5所示。MN管理員用戶購書訂單列表MN管理員用戶購書訂單列表訂單圖書圖書分類11NN11管理員實體的E-R圖,如圖3.6所示。圖書分類實體的E-R圖,如圖3.7所示。用戶信息實體的E-R圖,如圖3.8所示。圖書實體的E-R圖,如圖3.9所示。訂單實體的E-R圖,如圖3.10所示。訂單列表實體的E-R圖,如圖3.11所示。管理員管理員用戶名密碼圖書分類分類名稱分類編號圖3.6管理員實體的E-R圖圖3.7圖書分類實體E-R圖用戶用戶用戶名密碼地址真名性別電話郵編Email注冊時間注冊IP圖3.8用戶實體E-R圖圖書圖書圖書編號圖書名稱分類編號封面作者出版社內(nèi)容介紹總數(shù)量剩余數(shù)量價格圖3.9圖書實體E-R圖訂單訂單訂單編號用戶編號購買時間總價格內(nèi)容IP地址是否發(fā)貨是否付款圖3.10訂單實體E-R圖訂單列表訂單列表購書數(shù)量圖書編號用戶號訂單號圖3.11訂單列表實體的E-R圖3.7數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計本系統(tǒng)數(shù)據(jù)庫采用SQLServer2000數(shù)據(jù)庫,系統(tǒng)數(shù)據(jù)庫名稱為bookshop,下面分別給出數(shù)據(jù)表概要說明、數(shù)據(jù)表關(guān)系概要說明及主要數(shù)據(jù)表的結(jié)構(gòu)。1、 數(shù)據(jù)表概要說明數(shù)據(jù)表樹型結(jié)構(gòu)圖如圖3.12所示,該數(shù)據(jù)表樹型結(jié)構(gòu)圖包含系統(tǒng)所有的數(shù)據(jù)表圖3.12數(shù)據(jù)表樹型結(jié)構(gòu)圖2、各個表的結(jié)構(gòu)如下表表3.1為圖書信息列表,記錄書店現(xiàn)有的圖書信息。表3.1Book表列名數(shù)據(jù)類型長度允許空注釋IDInt4圖書編號BookNamevarchar40否圖書名稱BookClassInt4否圖書分類AuthorVarchar25是作者PublishVarchar150是出版社BookNoVarchar30是書號Contenttext300是內(nèi)容Pricefloat8是價格Amountint4是總數(shù)量Leav_numberint4是剩余數(shù)量RegTimedatatime8是注冊時間Picturevarchar60是封面表3.2為書店管理員信息表,記錄管理員的帳號和密碼。表3.2BookAdmin表列名數(shù)據(jù)類型長度允許空注釋AdminuserVarchar20否管理員AdminPassVarchar20否管理員密碼表3.3為用戶信息表,記錄用戶的基本信息。表3.3用戶表列名數(shù)據(jù)類型長度允許空注釋IDInt2否用戶編號UserNameVarchar50否用戶名passWordVarchar50否密碼NamesVarchar50否真名SexVarchar50是性別AddressVarchar50是地址PhoneVarchar50是電話PostVarchar50是郵編EmailVarchar50是電子郵件RegTimeDatatime50是注冊時間RegIPAddressvarchar50是注冊IP地址表3.4為訂單總表,記錄某個用戶的訂單總信息。表3.4訂單總表列名數(shù)據(jù)類型長度允許空注釋IDInt4否總訂單編號OrderIDInt4否訂單號BookNoInt4否書號Amountint4是數(shù)量表3.5為訂單表,記錄整張訂單的具體信息。表3.5訂單表列名數(shù)據(jù)類型長度允許空注釋IDInt4否訂單IDOrderIDVarchar50否總訂單IDUserIdVarchar50否用戶IDSubmitTimeDatatime8是提交時間ConsignmentTimeDatatime8是購買時間TotalPriceFloat16是總價格contentText300是描述IpaddressVarchar50是IP地址IspayoffVarchar50是是否付款I(lǐng)sAddressvarchar20是是否發(fā)貨表3.6為圖書分類表,記錄書店現(xiàn)有圖書的分類。表3.6Bookclass表列名數(shù)據(jù)類型長度允許空注釋IDVarchar30否分類編號ClassNamevarchar30否分類名第四章系統(tǒng)詳細設(shè)計4.1開發(fā)技術(shù)簡介4.1.1JSP簡介JSP(JavaServerPages)是由SunMicrosystems公司倡導、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術(shù)標準,JSP技術(shù)在Servlet技術(shù)基礎(chǔ)上發(fā)展起來的,它正在飛速發(fā)展中,現(xiàn)已成為Java服務(wù)器編程的重要組成部分。它雖然還未成型,但是它必將和J2EE(Java2EnterpriseEdition)一起發(fā)展[6]。JSP是結(jié)合markup(HTML和XML)和Java代碼來處理一種動態(tài)頁面。每一頁第一次被調(diào)用時,通過JSP引擎自動被編譯成Servlet,然后被執(zhí)行,以后每次調(diào)用時,執(zhí)行編譯過的Servlet。JSP提供了多種方式訪問Javaclass、Servlet、Applets和WebServer,因此,Web應用的功能可以分成多個明確定義公用接口的組件,通過JSP將它們結(jié)合在一起[9]。4.1.2JSP的運行原理在JSP第一次獲得來自于客戶端瀏覽器的請求時,JSP文件將被JSP引擎(JSPengine)轉(zhuǎn)換成一個Servlet,即將”.jsp”文件編譯成JavaClass文件。當Servlet引擎接收到請求后,如果設(shè)置了使用最新的JSP,它就會去找JSP文件,檢查該文件在上次編譯后是否改動過。如果改動過,就會重新編譯生成新的Servlet,最終將請求轉(zhuǎn)交給編譯好的Servlet引擎執(zhí)行[1]。如圖4.1ClientClient客戶端請求(Request)WebServer響應(Response)Serverextension服務(wù)器擴展ServletengineJSPengineServlet引擎JSP引擎ClassloaderJavacomplierJSPparser類載入器Java編譯器JSP語法分析器圖4.1JSP運行原理圖在編譯時如果發(fā)現(xiàn)JSP文件有任何語法錯誤,轉(zhuǎn)換過程將中斷,并向客戶端發(fā)出出錯信息;如果編譯成功,則所轉(zhuǎn)換產(chǎn)生的Servlet代碼被編譯,然后該Servlet被JSP引擎加載到內(nèi)存中。此時JSP引擎還請求了jspInit()方法的執(zhí)行,并對此Servlet初始化。JspInit()方法在Servlet的生命周期中只被請求一次,然后將被調(diào)用來處理客戶端的請求和回復操作。對于所有隨后對該JSP文件的請求,服務(wù)器將檢查該JSP文件自最后一次被存取后是否經(jīng)過修改。如果沒有修改,則將請求交還給還在內(nèi)存中的Servlet的jspService()方法,執(zhí)行回復操作。由于Servlet始終駐于內(nèi)存,所以響應是非??斓?。Jsp頁面在第一次訪問時由于要轉(zhuǎn)化和編譯,運行速度較慢,但是當?shù)诙卧L問該頁時,由于文件已經(jīng)被編譯成字節(jié)碼文件了,所以速度非常得快。4.1.3JSP頁面的組成JSP頁面看上去像標準的HTML和XML頁面,并附帶有JSP引擎能夠處理和解析執(zhí)行的代碼與組件。通常,JSP代碼和組件用于創(chuàng)建在最終頁面上顯示的文本。通常來說,JSP頁面包括模板元素,指令元素,動作元素,Scritptlets,聲明,表達式和JSP內(nèi)建對象。4.1.4JavaBean技術(shù)介紹JavaBean技術(shù)是一種基于Java的組件技術(shù),JavaBean組件可以用來執(zhí)行復雜的計算任務(wù),或負責與數(shù)據(jù)庫的交互以及數(shù)據(jù)的提取,以及封裝事務(wù)邏輯等,可以很好的實現(xiàn)業(yè)務(wù)邏輯和前臺程序的分離使得系統(tǒng)具有更好的健壯性和靈活性,同時也是解決代碼重用問題的一種策略。以前的組件無法實現(xiàn)真正的代碼重用,其主要原因就是它們對于處理平臺的依賴和對開發(fā)語言的依賴過重。由于Java語言在這些方面所具有的特點和優(yōu)勢,使得基于它的軟件JavaBean組件技術(shù)倍受人們的關(guān)注。它的任務(wù)就是:一次編寫,可以在任何地方執(zhí)行,可以在任何地方重用。JavaBean組件可以在任何地方?jīng)_用包括了可以在應用程序、其他組件、文檔、Web站點和應用程序構(gòu)造器工具等多種方案中再利用。為了創(chuàng)建和使用Java軟件組件,JavaBean被實現(xiàn)為一種獨立于平臺和結(jié)構(gòu)的應用程序接口,它的實現(xiàn)可以忽略內(nèi)部的結(jié)構(gòu)及細節(jié)問題,只需要定義其外部的特征及對外功能就行。其中,屬性、方法和事件三種接口可以獨立對外進行開發(fā)。JavaBean的實質(zhì)就是一個.class文件,也可以成為類文件。JavaBean以binary格式保存,可以保護Java源代碼不容易被他人抄襲[7]。4.1.5JSP的運行環(huán)境要運行JSP(注意,不是瀏覽JSP頁面),需要有支持Jsp的服務(wù)器。這里分2種情況:一種是自身就支持JSP的服務(wù)器,如Jrun,Weblogic,JSWDK等;而另一種則是在不支持JSP的服務(wù)器上安裝JSP引擎的插件,如在IIS,Apache等服務(wù)器上安裝WebSphere,Tomcat,Resin等插件。其中主流服務(wù)器是Weblogic和tomcat.Weblogic是一款功能強大的服務(wù)器軟件,配置比較簡單,而且Jsp的擴展功能較多,附帶了數(shù)據(jù)庫的JDBC驅(qū)動程序。,支持JHTML(一種與Jsp十分相似的技術(shù)),是目前市場占有率最高的服務(wù)器。不過,Weblogic的運行情況不太穩(wěn)定,使用它調(diào)試Jsp文件,出現(xiàn)語法錯誤或者數(shù)據(jù)庫連接錯誤時,Weblogic就有可能崩潰。Tomcat服務(wù)器是ApacheGroupJakarta小組開發(fā)的一個免費服務(wù)器軟件,適合于嵌入Apache中使用,而且,它的源代碼可以免費獲得,你可以自由地對它進行擴充。訪問的地址http://jakarta./tomacat/index.html,Tomcat服務(wù)器的兼容性很好,如WebLogic服務(wù)器采用其為Web服務(wù)器引擎,Jbuilder將其作為標準的測試服務(wù)器,Sun公司也將其作為JSP技術(shù)應用的示例服務(wù)器。不足之處是它的配置比較麻煩,對系統(tǒng)硬件要求較高,而且有一些安全性的問題沒有解決。但是Tomcat服務(wù)器有眾多大軟件公司的支持,而且服務(wù)器的性能穩(wěn)定,其發(fā)展前景很好[9]。4.2詳細設(shè)計及說明Bean的編寫,例如:數(shù)據(jù)庫連接Bean的編寫,字符處理Bean的編寫等等這些類這里就不詳細說明了,具體見代碼。這里以管理用戶和管理訂單的類簡要進行說明。4.2.1管理用戶的Bean為了使用上的方便,我把對用戶的管理,包括用戶的添加、刪除、修改、查詢等集合成一個管理類,即op_user類。圖4.2為該類的類圖,其中只是關(guān)鍵的幾個方法:Op_userOp_userUser:userUsername:usernameAdd():BooleanDelete():booleanGet_alluser():booleangetGbk():Stringsetusername():voidupdate():booleanMessage:StringPage:intpageCount:intpageSize:intrecordCount:longuserid:longuserlist:Vectorrequest:HttpServletRequest圖4.2管理用戶op_user類的類圖有類圖可以看出該類具有以下屬性:privateuseruser=newuser(); //新的用戶對象privatejavax.servlet.http.HttpServletRequestrequest;//建立頁面請求privateVectoruserlist; //顯示用戶列表向量數(shù)組privateintpage=1; //顯示的頁碼privateintpageSize=8; //每頁顯示的圖書數(shù)privateintpageCount=0; //頁面總數(shù)privatelongrecordCount=0; //查詢的記錄總數(shù)privateStringmessage=“”; //出錯信息提示privateStringusername=“”; //注冊后返回的用戶名privatelonguserid=0; //注冊后返回的用戶ID4.2.2管理訂單的Bean當用戶選擇圖書后單擊[購買]按鈕時,選定的圖書就被放入購物車中,這是系統(tǒng)并沒有把數(shù)據(jù)提交到數(shù)據(jù)庫,而是保存在Session中,只有用戶進入購物車頁面單擊[提交購物車]按鈕時才把數(shù)據(jù)作為訂單提交到數(shù)據(jù)庫中。我把實現(xiàn)上述邏輯及對訂單和訂單列表的管理放在一個類中,即:OP_buy。圖4.3為該類的類圖。OOp_buyAll_price:floatBooknumber:intRequest:HttpServletRequestSession:HttpseeeionSqlflag:booleanAddnew();BooleanDelete():BooleandelShoper():BooleangetAllorder():VectorgetGbk():StringgetEmpty():BooleangetisLogin():BooleangetOrder():Booleanop_buy():voidpayout():Booleanupdate():boolean圖4.3管理訂單op_buy類的類圖上圖中Addnew()方法是向購物車中添加一條新的購買紀錄,首先從頁面獲得請求對象,從中獲取圖書編號等參數(shù),判斷購買數(shù)量是否大于庫存量,如果是,則設(shè)置標志isEmpty為false,本次購買將不成功。如果不是,則判斷用戶是不是第一次購買,如果是第一次購買,則直接在列表中添加一條新記錄,如果不是第一次購書,則判斷用戶先前是不是購買過該書,如果是則把購買數(shù)量增加,否則添加新記錄。4.3客戶界面設(shè)計4.3.1界面頭、界面尾設(shè)計為了提高代碼的重用性,我把客戶界面部分相同的頭和尾做成兩個模塊,分別命名為head.inc和tail.inc,這兩個文件都是純HTML代碼,在頭和尾引入下面的兩句代碼方可;<%@includefile=”/bookshop/inc/head.inc”%><%@includefile=”/bookshop/inc/tail.inc”%>4.3.2用戶登陸模塊設(shè)計為了檢測用戶是否是書店的合法用戶,需要用戶輸入用戶名和密碼來核對用戶的合法性,用戶登陸模塊就是完成這一功能。該模塊需要用到Login.java這個Bean。界面如圖4.6圖4.4用戶登陸界面4.3.3在線購書功能模塊設(shè)計在該模塊用戶可以看見現(xiàn)有的圖書,用戶可以查找圖書(可分類查詢,也可以按關(guān)鍵字查詢),用戶可以購買圖書(把書放進購物車),也可以查看圖書的詳細資料,還可以轉(zhuǎn)到其他模塊,如查看購物車,查看訂單信息等。考慮到其他頁面也用到導航條和左邊的圖書分類和圖書查詢部分,因此把這兩部分也設(shè)計成兩個公用模塊:sub.inc和left.inc,在其他頁面中只需引入即可。4.3.4我的購物車功能模塊設(shè)計在“我的購物車”這個模塊里,用戶可以修改購買數(shù)量,可以修改已經(jīng)選購的圖書,可以提交購物車(在提交時可以簡單附言說明),可以清空購物車,還可以繼續(xù)購書,或者查詢圖書,或者轉(zhuǎn)到其他功能模塊。買書的第一步便是用戶登錄,現(xiàn)在購書網(wǎng)站都要求已經(jīng)注冊過的用戶才能購買書籍,這樣便于網(wǎng)站管理。CheckLogin()就是用來檢驗用戶的合法性的: functionchecklogin(){ if(document.payout.userid.value=="") { alert("你還沒有登錄,請登錄后再提交購物清單。"); returnfalse; }證明是合法用戶后,就必須給這個用戶一個購物車,用戶每次選中一本書,點擊“放入購物車”,就必須添加一個訂購單。這就相當于把用戶要買的書放入購物車里,addnew()就是用來實現(xiàn)這些的,4.3.5訂單信息功能模塊設(shè)計在該功能模塊用戶可以看見自己已經(jīng)提交的所有訂單,可以查看訂單的詳細情況。并設(shè)計以彈出窗口的形式顯示訂單信息,在彈出的窗口中可以付款。4.4管理界面設(shè)計4.4.1界面頭、界面尾設(shè)計同客戶界面一樣,為了提高代碼的重用性,把相同的頭和尾設(shè)計成兩個公用模塊,分別引入即可[1]:<
%@includefile=”/bookshop/inc/admin_head.inc”%>
<%@includefile=”/bookshop/inc/admin_tail.inc”%>兩個文件都是純HTML代碼,再次就不多講。4.4.2管理員登陸功能模塊設(shè)計為了檢測用戶是否是管理員,所以需要對登陸用戶進行檢測。該模塊需要用到Login.java這個Bean,需要設(shè)計一個表單讓用戶輸入用戶名和密碼。如圖4.7圖4.5管理員登陸界面4.4.3現(xiàn)有圖書管理功能模塊設(shè)計在該功能模塊管理員可以查看詳細資料,可以修改圖書,可以刪除圖書如圖4.6所示。,部分代碼如下。if(request.getParameter("action")!=null&&request.getParameter("action").equals("del")){ try{ intdelid=Integer.parseInt(request.getParameter("id")); if(book_list.delete(delid)){ mesg="刪除成功!"; }else{ mesg="刪除出錯!"; } }catch(Exceptione){ mesg="你要刪除的對象錯誤!"; }}if(request.getParameter("page")!=null&&!request.getParameter("page").equals("")){ Stringrequestpage=request.getParameter("page"); try{ pages=Integer.parseInt(requestpage); }catch(Exceptione){ mesg="你要找的頁碼錯誤!"; }}%>圖4.6現(xiàn)有圖書管理功能模塊圖4.4.4訂單管理功能模塊設(shè)計在這個功能模塊,管理員可以查看下訂單用戶的詳細資料(單擊用戶名),可以查看訂單的詳細情況,還可以刪除訂單。效果圖如圖4.8所示。圖4.7訂單管理效果圖4.4.5用戶管理功能模塊設(shè)計管理員可以通過值額個模塊查看用戶的詳細資料,修改用戶資料和刪除用戶資料,實現(xiàn)代碼和圖書管理基本上差不多。在此就不多說。第五章系統(tǒng)使用5.1服務(wù)器的配置及環(huán)境的搭建從JSP的運作全過程可見,運行JSP最少需要三樣東西:JSP引擎、Web服務(wù)器和JVM。最常用的Java開發(fā)工具就是JDK和Jbuilder,它們之間的很大不同就是JDK是字符界面,而Jbuilder是窗口界面。本系統(tǒng)直接采用JDK作為JVM和Eclipse3.2+MyEcliopse5.0來開發(fā),Eclpise是一個功能非常強大的JAVA/JSP/J2EE工具,它主要以提供插件的方式進行開發(fā)。所用的操作系統(tǒng)是WindowsXP,服務(wù)器采用的是Tomcat,利用了它充當Jsp引擎,同時還利用了它的信息發(fā)布功能。首先把JDK,tomcat安裝到本地硬盤C盤根目錄下,下面詳細的介紹如何配置運行環(huán)境:第一步:進入我的桌面,右擊“我的電腦”,選擇“屬性”選項,進入“系統(tǒng)屬性“對話框,單擊”高級“標簽“,如圖5.1所示:圖5.1第二步:點擊上圖箭頭所示“環(huán)境變量”,進入圖5.2畫面。圖5.2第三步:單擊“系統(tǒng)變量”部分的“新建按扭”,創(chuàng)建JAVA-HOME變量,在變量值欄內(nèi)輸入C:\ProgramFiles\ava\jdk1.6.0_01,圖5.3是Java_home的路徑,指明JDK安裝路徑,就是剛才安裝時所選擇的路徑C:\jdk1.6.0_01,此路徑下包括lib,bin,jre等文件夾(此變量最好設(shè)置,因為以后運行tomcat,eclipse等都需要依靠此變量)圖5.3第四步:同樣的方法創(chuàng)建CLASSPATH變量,在變量欄內(nèi)輸入,.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(要加.表示當前路徑)CLASSPATH為java加載類(classorlib)路徑,只有類在classpath中,java命令才能識別。第五步:創(chuàng)建PATH變量,在變量欄內(nèi)輸入,%JAVA_HOME%\bin;%JAVA_HOME%\jre\binPath使得系統(tǒng)可以在任何路徑下識別java命令。第六步:創(chuàng)建Tomcat-Home變量,在變量欄內(nèi)輸入C:\ProgramFiles\ApacheSoftwareFoundation\Tomcat5.0如圖5.4所示:圖5.4第七步:檢測配置是否成功:檢測JDK是否配置成功編寫一個java程序,例如:publicclassHelloWorldApp{ publicstaticvoidmain(Stringargs[]) { System.out.println(“HelloWorld!”); }}首先把它放到一個名為HelloWorldApp.java的文件中,這里,文件名應和類名相同,因為java解釋器要求公共類必須放在與其同名的文件中。然后對它進行編譯:c:\>javac–gHelloWorldApp.java編譯的結(jié)果是生成字節(jié)碼文件HelloWorldApp.class。最后用java解釋器來運行該字節(jié)碼文件:c:\>javaHelloWorldApp結(jié)果是在屏幕上顯示“HelloWorld!”至此,JDK完全安裝成功。檢測tomcat是否配置成功進入C:\Tomcat5.0\bin目錄,雙擊startup
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 格林童話讀后感(15篇)
- 大學認識實習報告范文匯編10篇
- 六一兒童節(jié)主題活動總結(jié)10篇
- 個人試用期轉(zhuǎn)正工作總結(jié)(匯編15篇)
- 幼兒園學前班新學期工作計劃
- 教師的感恩演講稿四篇
- 軍訓個人心得體會(集錦15篇)
- 山西財經(jīng)大學計算機應用技術(shù)814數(shù)據(jù)結(jié)構(gòu)考研題庫
- 九年級下冊數(shù)學教學計劃錦集(17篇)
- 健康檢查服務(wù)合同(2篇)
- 《東南亞經(jīng)濟與貿(mào)易》習題集、案例、答案、參考書目
- 燒烤店裝修合同范文模板
- 2024年中國櫻桃番茄種市場調(diào)查研究報告
- 數(shù)據(jù)分析基礎(chǔ)與應用指南
- 人教版(PEP)小學六年級英語上冊全冊教案
- 廣東省廣州市海珠區(qū)2023-2024學年六年級上學期月考英語試卷
- 消防水域救援個人防護裝備試驗 大綱
- 機電樣板施工主要技術(shù)方案
- 涉稅風險管理方案
- 青島市2022-2023學年七年級上學期期末道德與法治試題
- 高空作業(yè)安全免責協(xié)議書范本
評論
0/150
提交評論