




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、河北工業(yè)大學(xué)城市學(xué)院畢業(yè)設(shè)計(jì)說(shuō)明書(shū) 作 者: xxx 學(xué) 號(hào): 系: 計(jì)算機(jī)科學(xué)與軟件學(xué)院 專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù)專業(yè) 題 目: 基于jsp的在線書(shū)店系統(tǒng) 指導(dǎo)者: 評(píng)閱者: 2010年 6月 3日畢業(yè)設(shè)計(jì)中文摘要基于jsp的在線書(shū)店系統(tǒng)摘要:在internet上的眾多網(wǎng)站中,基于web數(shù)據(jù)庫(kù)的動(dòng)態(tài)網(wǎng)站應(yīng)用相當(dāng)廣泛。原有開(kāi)發(fā)網(wǎng)站的cgi技術(shù)逐漸被java、applet、activex控件、dhtml和javascript所取代,但當(dāng)他們嘗試做一些深入的工作時(shí),它們開(kāi)始遇到客戶端瀏覽器不兼容、服務(wù)器負(fù)擔(dān)過(guò)重、訪問(wèn)速度下降以及安全性問(wèn)題。jsp技術(shù)就是解決這些問(wèn)題的一把金鑰匙。本文介紹了電子商
2、務(wù)網(wǎng)站在線書(shū)店系統(tǒng)的開(kāi)發(fā)與實(shí)現(xiàn)。本系統(tǒng)由前臺(tái)模塊和后臺(tái)模塊兩部分組成,實(shí)現(xiàn)了從對(duì)外溝通展示、信息發(fā)布、在線圖書(shū)展示功能,到在線洽談、在線交易、在線采購(gòu)、在線客戶服務(wù)、在線網(wǎng)站管理等功能。本系統(tǒng)采用jsp+javabean的開(kāi)發(fā)模式,使用j2sdk,tomcat,和dramweaver等工具開(kāi)發(fā),后臺(tái)數(shù)據(jù)庫(kù)采用sql server 2000實(shí)現(xiàn)。該系統(tǒng)的界面友好、操作方便,系統(tǒng)中各項(xiàng)功能模塊均已通過(guò)測(cè)試,能夠穩(wěn)定運(yùn)行。關(guān)鍵詞:java 在線書(shū)店 jsp sql server 2000畢業(yè)設(shè)計(jì)外文摘要title the online bookstore based on jsp abstractm
3、any websites in the internet, web-based database of a wide range of dynamic web applications . the original development site cgi technology gradually java, applet, activex control, dhtml and javascript replaced, but when they try to do some intensive work, they began to encounter the client browser
4、is not compatible, the server overload, decrease speed of access and security issues. jsp technology is a golden -key to solve these problems.this text has introduced the electronic commerce websites - development and realization of the system of online bookstore. this system is made up of module of
5、 front desk and backstage supporters module, realize from link up show , information issue , online books show the function to the outside, get negotiate , online trade , purchase , online customer service , online website management ,etc. the system is designed by using jsp+javabean pattern, and us
6、es tools j2sdk, tomcat and dramweaver for the development, and the backstage database is realized by sql server 2000.the interface of the system is user-friendly and convenient. various functional testings have been adopted, results show it stable.keywords:java bookshoponline jsp sql server目 次 1 引言1
7、2 可行性分析33 需求分析44 系統(tǒng)設(shè)計(jì)思想65 網(wǎng)站架設(shè)65.1 開(kāi)發(fā)環(huán)境65.2 建立站點(diǎn)66 數(shù)據(jù)庫(kù)的設(shè)計(jì)76.1 數(shù)據(jù)庫(kù)的分析76.2 數(shù)據(jù)表的結(jié)構(gòu)77 javabean技術(shù)在系統(tǒng)中的應(yīng)用108 前臺(tái)開(kāi)發(fā)168.1 設(shè)計(jì)分析168.2 重點(diǎn)推薦圖書(shū)的實(shí)現(xiàn)過(guò)程178.3 新到圖書(shū)實(shí)現(xiàn)過(guò)程198.4 圖書(shū)分類實(shí)現(xiàn)過(guò)程198.5 用戶管理實(shí)現(xiàn)過(guò)程208.6 購(gòu)物車實(shí)現(xiàn)過(guò)程218.7 生成訂單實(shí)現(xiàn)過(guò)程238.8 訂單查詢實(shí)現(xiàn)過(guò)程249 后臺(tái)開(kāi)發(fā)259.1 設(shè)計(jì)分析259.2 后臺(tái)登錄實(shí)現(xiàn)過(guò)程259.3 圖書(shū)管理實(shí)現(xiàn)過(guò)程269.4 用戶管理實(shí)現(xiàn)過(guò)程289.5 訂單管理實(shí)現(xiàn)過(guò)程299.6 退出系
8、統(tǒng)實(shí)現(xiàn)過(guò)程30結(jié) 論31參考文獻(xiàn)32致謝331 引言當(dāng)今世界,電子商務(wù)已經(jīng)成為一大熱點(diǎn)。無(wú)論是傳統(tǒng)的制造業(yè)或是新興的金融企業(yè),都把電子商務(wù)作為企業(yè)經(jīng)營(yíng)的一種新方式,紛紛投入巨資建立網(wǎng)站,在國(guó)際互聯(lián)網(wǎng)上從事btob,btoc的各類商業(yè)活動(dòng),在網(wǎng)上進(jìn)行交易?;ヂ?lián)網(wǎng)從它出現(xiàn)開(kāi)始就不僅改變了信息傳遞的方式,同時(shí)改變著企業(yè)的運(yùn)營(yíng)模式,管理模式,影響著人們的生活觀念,改變著人們的習(xí)慣。網(wǎng)絡(luò)使人們足不出戶就能獲取各方面的信息,而電子商城的出現(xiàn)更是人們足不出戶就可以進(jìn)行商品交易活動(dòng)?;ル娮由虅?wù)網(wǎng)站有什么特性?將如何發(fā)展?不少人以為internet時(shí)代的電子商務(wù)是新經(jīng) 濟(jì),是獨(dú)立于舊經(jīng)濟(jì)體制之外的,不受經(jīng)濟(jì)規(guī)律
9、制約的新人類,這是一個(gè)美麗的錯(cuò)誤。 電子商務(wù)其實(shí)只是舊經(jīng)濟(jì)體制下延伸出來(lái)的新平臺(tái),其本質(zhì)仍是商務(wù),目標(biāo)仍是利潤(rùn),這是華爾街老板們?nèi)账家瓜?,念念不忘的兩個(gè)字。正因如此,一個(gè)網(wǎng)站要發(fā)展電子商務(wù),首要的考慮因素是這種模式能否賺錢(qián),什么時(shí)候才能盈利。其他因素都是次要的,縱使你的馬跑得很快,圈了半個(gè)地球都沒(méi)有用,遲早這塊地還是要送人。事實(shí)上網(wǎng)民的忠誠(chéng)度非常低,一不小心一件小禮物,一個(gè)百萬(wàn)分之一的機(jī)會(huì)就可以把人釣走了。 除此之外,電子商務(wù)還有另一層含義,就是以這種全新的平臺(tái)取代傳統(tǒng)的交易平臺(tái),以實(shí)現(xiàn)減少流通環(huán)節(jié),降低成本,從而增加利潤(rùn)這個(gè)大目標(biāo)。在未來(lái)的兩至三年里,電子商務(wù)平臺(tái)與傳統(tǒng)交易平臺(tái)將不斷交鋒。
10、電子商務(wù)是綜合運(yùn)用信息技術(shù)、以提高貿(mào)易伙伴間商業(yè)運(yùn)作效率為目標(biāo),將一次交易全過(guò)程中的數(shù)據(jù)和資料用電子方式實(shí)現(xiàn),在商業(yè)的整個(gè)運(yùn)作過(guò)程中實(shí)現(xiàn)交易無(wú)紙化、直接化。電子商務(wù)將改變?nèi)藗兊南M(fèi)方式。網(wǎng)上購(gòu)物的最大特征是消費(fèi)者的主導(dǎo)性,購(gòu)物意愿掌握在消費(fèi)者手中,同時(shí)消費(fèi)者還能以一種輕松自由的自我服務(wù)的方式來(lái)完成交易,消費(fèi)者主權(quán)可以在網(wǎng)絡(luò)購(gòu)物中充分體現(xiàn)出來(lái)。網(wǎng)上購(gòu)物更符合時(shí)代的要求:如今人們?cè)絹?lái)越追求時(shí)尚、講究個(gè)性,注重購(gòu)物的環(huán)境,網(wǎng)上購(gòu)物,更能體現(xiàn)個(gè)性化的購(gòu)物過(guò)程。1.1課題研發(fā)背景隨著internet的發(fā)展,電子商城將成為21世紀(jì)網(wǎng)絡(luò)發(fā)展的主流,網(wǎng)上購(gòu)物將成為一種購(gòu)物時(shí)尚。目前國(guó)內(nèi)企業(yè)正紛紛加入到阿里巴巴
11、等一系列大型電子商務(wù)網(wǎng)站中,通過(guò)網(wǎng)絡(luò)進(jìn)行交易將成為未來(lái)商品交易的重要組成部分。企業(yè)在建立宣傳網(wǎng)絡(luò)的同時(shí),也逐步擴(kuò)大了企業(yè)自身的網(wǎng)絡(luò)銷售渠道,建立起自己的電子商城網(wǎng)站,完成了從“企業(yè)對(duì)企業(yè)”到“企業(yè)對(duì)個(gè)人”同時(shí)進(jìn)行網(wǎng)絡(luò)交易的過(guò)渡,大大提高了企業(yè)的生產(chǎn)效益。隨著硬件技術(shù)、網(wǎng)絡(luò)技術(shù)及網(wǎng)上交易法規(guī)的日趨完善,電子商城將成為企業(yè)銷售經(jīng)營(yíng)的主要渠道。如何建立企業(yè)的電子商務(wù),如何把企業(yè)業(yè)務(wù)建在internet上,涉及到建立電子商務(wù)網(wǎng)站、開(kāi)發(fā)符合internet特點(diǎn)的有效的業(yè)務(wù)應(yīng)用、管理網(wǎng)上的交易信息、保證網(wǎng)上數(shù)據(jù)安全、快速反映市場(chǎng)變化以及充分滿足internet業(yè)務(wù)進(jìn)一步發(fā)展的要求等等。對(duì)一個(gè)運(yùn)營(yíng)商業(yè)企業(yè)來(lái)
12、說(shuō),電子商務(wù)網(wǎng)站是其生存的理由和基礎(chǔ),同時(shí)也是企業(yè)對(duì)外展示信息、從事商務(wù)活動(dòng)的窗口和界面。如何設(shè)計(jì)、建立一個(gè)經(jīng)濟(jì)、實(shí)用、安全、高效、穩(wěn)定的網(wǎng)站是每個(gè)電子商務(wù)網(wǎng)站必須考慮的問(wèn)題。而要解決好這些問(wèn)題,就必須在提高企業(yè)內(nèi)部管理效率、充分利用企業(yè)內(nèi)部資源的基礎(chǔ)上,從整體上降低成本,加快對(duì)市場(chǎng)的響應(yīng)速度,提高服務(wù)質(zhì)量,提高企業(yè)的競(jìng)爭(zhēng)力。但是企業(yè)在利用信息化技術(shù)時(shí),必須要考慮成本、技術(shù)難度、創(chuàng)造的價(jià)值等幾個(gè)方面。1.2 課題研發(fā)意義網(wǎng)站的主要目的就是通過(guò)網(wǎng)站來(lái)推廣互聯(lián)企業(yè)的產(chǎn)品和服務(wù),并使客戶隨時(shí)可以了解企業(yè)和企業(yè)的產(chǎn)品,為客戶提供在線服務(wù)和訂單處理功能。電子商務(wù)可以使貿(mào)易環(huán)節(jié)中各個(gè)商家和廠家更緊密地聯(lián)系
13、,更快地滿足需求,在全球范圍內(nèi)選擇貿(mào)易伙伴,以最小的投入獲得最大的利潤(rùn)。電子商務(wù)將改變?nèi)藗兊南M(fèi)方式。網(wǎng)上購(gòu)物的最大特征是消費(fèi)者的主導(dǎo)性,購(gòu)物意愿掌握在消費(fèi)者手中,同時(shí)消費(fèi)者還能以一種輕松自由的自我服務(wù)的方式來(lái)完成交易,消費(fèi)者主權(quán)可以在網(wǎng)絡(luò)購(gòu)物中充分體現(xiàn)出來(lái)。電子商城網(wǎng)站的建設(shè),可以建立起電子商務(wù)服務(wù)的門(mén)戶站點(diǎn),是現(xiàn)實(shí)社會(huì)到網(wǎng)絡(luò)社會(huì)的真正體現(xiàn),為廣大網(wǎng)上商家以及網(wǎng)絡(luò)客戶提供一個(gè)符合中國(guó)國(guó)情的電子商務(wù)網(wǎng)上生存環(huán)境和商業(yè)運(yùn)作空間。2 可行性分析可行性分析是在系統(tǒng)調(diào)查的基礎(chǔ)上,針對(duì)新系統(tǒng)的開(kāi)發(fā)是否具備必要性和可能性,對(duì)新系統(tǒng)的開(kāi)發(fā)從技術(shù)、經(jīng)濟(jì)、社會(huì)的方面進(jìn)行分析和研究,以避免投資失誤,保證新系統(tǒng)的開(kāi)
14、發(fā)成功??尚行匝芯康哪康木褪怯米钚〉拇鷥r(jià)在盡可能短的時(shí)間內(nèi)確定問(wèn)題是否能夠解決,因此該系統(tǒng)的可行性分析包括以下幾個(gè)方面的內(nèi)容。2.1 市場(chǎng)需求分析隨著全球經(jīng)濟(jì)一體化的逐步發(fā)展和深入,傳統(tǒng)書(shū)店因企業(yè)成本高,規(guī)模小,品種少已經(jīng)阻礙了圖書(shū)市場(chǎng)的發(fā)展。順應(yīng)市場(chǎng)形勢(shì)的發(fā)展,網(wǎng)上書(shū)店應(yīng)運(yùn)而生。本系統(tǒng)即為一個(gè)小型的在線書(shū)店系統(tǒng)。在線書(shū)店在國(guó)際互聯(lián)網(wǎng)上可以實(shí)現(xiàn)的商務(wù)功能已經(jīng)多樣化。同傳統(tǒng)書(shū)店相比,網(wǎng)上書(shū)店具有如下優(yōu)勢(shì)。a.通過(guò)網(wǎng)上購(gòu)物,購(gòu)買(mǎi)者足不出戶,可節(jié)省很多時(shí)間,價(jià)格和便捷這兩大優(yōu)點(diǎn)的存在決定了網(wǎng)上書(shū)店發(fā)展的良好前景。b.與傳統(tǒng)的書(shū)店經(jīng)營(yíng)模式相比,在線書(shū)店可以節(jié)省包括商場(chǎng)租金,書(shū)本上架,書(shū)本翻閱損耗,員工
15、工資等很大一筆成本費(fèi)用,在傳統(tǒng)的書(shū)店里一般不打折的新書(shū),暢銷書(shū),精品書(shū),在網(wǎng)上可以以很低的價(jià)格購(gòu)買(mǎi)到,這在競(jìng)爭(zhēng)中起到極其重要的作用。c.傳統(tǒng)的書(shū)店正常的日常開(kāi)銷很大,網(wǎng)絡(luò)書(shū)店不需要水泥店面的設(shè)計(jì),傳統(tǒng)的店員已經(jīng)消失,更多的書(shū)目意味著對(duì)讀者更大的滿足率等等。d.通過(guò)網(wǎng)上購(gòu)物,購(gòu)買(mǎi)者足不出戶,可節(jié)省很多時(shí)間,價(jià)格和便捷這兩大優(yōu)點(diǎn)的存在決定了網(wǎng)上書(shū)店發(fā)展的良好前景。e.與傳統(tǒng)的書(shū)店經(jīng)營(yíng)模式相比,在線書(shū)店可以節(jié)省包括商場(chǎng)租金,書(shū)本上架,書(shū)本翻閱損耗,員工工資等很大一筆成本費(fèi)用,在傳統(tǒng)的書(shū)店里一般不打折的新書(shū),暢銷書(shū),精品書(shū),在網(wǎng)上可以以很低的價(jià)格購(gòu)買(mǎi)到,這在競(jìng)爭(zhēng)中起到極其重要的作用。f.傳統(tǒng)的書(shū)店正常
16、的日常開(kāi)銷很大,網(wǎng)絡(luò)書(shū)店不需要水泥店面的設(shè)計(jì),傳統(tǒng)的店員已經(jīng)消失,更多的書(shū)目意味著對(duì)讀者更大的滿足率等等。2.2 技術(shù)可行性分析作為數(shù)據(jù)庫(kù)系統(tǒng)的開(kāi)發(fā),jsp是一個(gè)非常理想的選擇。數(shù)據(jù)庫(kù)是mis中的重要支持技術(shù),在mis開(kāi)發(fā)過(guò)程中,如何選擇數(shù)據(jù)庫(kù)管理是一個(gè)重要的問(wèn)題,目前,數(shù)據(jù)庫(kù)產(chǎn)品較多,每種產(chǎn)品都具有各自的特點(diǎn)和適用范圍,該開(kāi)發(fā)工具具有很多長(zhǎng)處:可視化編程、面向?qū)ο蟮某绦蛟O(shè)計(jì)、結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言、事件驅(qū)動(dòng)編程機(jī)制、訪問(wèn)數(shù)據(jù)庫(kù)方便、動(dòng)態(tài)數(shù)據(jù)交換(dde)、對(duì)象的鏈接與嵌入(ole)、動(dòng)態(tài)鏈接庫(kù)(dll)等等。因此,在選擇數(shù)據(jù)庫(kù)時(shí),應(yīng)考慮數(shù)據(jù)庫(kù)應(yīng)用的特點(diǎn)及適用范圍,本系統(tǒng)選用的數(shù)據(jù)庫(kù)語(yǔ)言是jsp語(yǔ)
17、言2.3 經(jīng)濟(jì)可行性分析由于本系統(tǒng)針對(duì)的是電子,只要工作人員合理使用該程序,可以明顯減少銷售人員的工作量、提高工作效率,能方便快捷的查詢統(tǒng)計(jì)購(gòu)物信息,所以當(dāng)系統(tǒng)投入運(yùn)行后可以為相關(guān)人員節(jié)約大量的人力,物力,所帶來(lái)的效益遠(yuǎn)遠(yuǎn)大于系統(tǒng)軟件的開(kāi)發(fā)成本。在經(jīng)濟(jì)上完全可行。2.4操作可行性分析界面設(shè)計(jì)充分考慮到了管理人員的習(xí)慣,使得操作簡(jiǎn)單;數(shù)據(jù)錄入迅速、規(guī)范、可靠;統(tǒng)計(jì)準(zhǔn)確;適應(yīng)力強(qiáng);容易擴(kuò)充。具有易用性、靈活性、開(kāi)放性與可視性3 需求分析隨著軟件開(kāi)發(fā)的日益成熟,面向?qū)ο蠹夹g(shù)以其以對(duì)象為核心、符合人類思維方法的特點(diǎn)迅速成為軟件開(kāi)發(fā)的一種重要方法,目前得到了廣泛的應(yīng)用,顯示出極大的優(yōu)越性。本系統(tǒng)采用面向
18、對(duì)象的分析方法,力求全面、準(zhǔn)確地揭示系統(tǒng)需求。3.1功能需求分析系統(tǒng)功能可分為前臺(tái)商品展示和后臺(tái)管理兩部分。前臺(tái)包括:1)圖書(shū)選購(gòu)(可按分類方式查找圖示,或通過(guò)關(guān)鍵字查詢)。2)用戶注冊(cè)。3)用戶登錄。4)查看用戶個(gè)人訂單信息。5)修改用戶個(gè)人信息。后臺(tái)管理包括:1) 管理員登陸2) 現(xiàn)有圖書(shū)管理:添加、修改、刪除、查看。3) 用戶管理:查看、信用管理。4) 訂單管理:查看訂單清單、更新訂單付款、付款狀態(tài)。5) 圖書(shū)滿意度調(diào)查:瀏覽投票項(xiàng)目、添加投票項(xiàng)目、刪除投票項(xiàng)目。系統(tǒng)用例圖如下:注冊(cè)修改個(gè)人信息查詢訂單圖書(shū)選購(gòu)用戶登錄 用戶 管理用戶信息管理圖書(shū)信息息訂單管理用戶滿意度調(diào)查管理員登錄 管
19、理員圖3.1 系統(tǒng)用例圖3.2 非功能需求分析要求目標(biāo)系統(tǒng)操作簡(jiǎn)單、方便快捷,以較少的人力高效的完成信息維護(hù)工作。做好系統(tǒng)安全和信息安全工作,做好數(shù)據(jù)備份,保證網(wǎng)站的正常運(yùn)行。高質(zhì)量的完成軟件開(kāi)發(fā)工作,盡可能減少運(yùn)行錯(cuò)誤的出現(xiàn)。本系統(tǒng)在性能上應(yīng)達(dá)到如下要求:1)系統(tǒng)運(yùn)行應(yīng)該速度快、穩(wěn)定、可靠,具有很好的容錯(cuò)、糾錯(cuò)能力;2)系統(tǒng)操作上應(yīng)簡(jiǎn)單、方便,界面簡(jiǎn)潔明了、美觀;3)系統(tǒng)應(yīng)能具有較高的安全性,對(duì)內(nèi)對(duì)外都有嚴(yán)格的身份認(rèn)證的措施;4)系統(tǒng)應(yīng)能支持多用戶超負(fù)荷并發(fā)訪問(wèn)、網(wǎng)絡(luò)數(shù)據(jù)共享;5)系統(tǒng)在結(jié)構(gòu)上應(yīng)具有很好的可擴(kuò)展性,便于將來(lái)的功能擴(kuò)展和維護(hù);6)數(shù)據(jù)計(jì)算準(zhǔn)確無(wú)誤,精確度符合業(yè)務(wù)的需要。4 系統(tǒng)
20、設(shè)計(jì)思想1. 頁(yè)面模塊化:本系統(tǒng)在界面設(shè)計(jì)上都采用了模塊化的思想,把好多頁(yè)面共有部分集成一個(gè)模塊,例如頁(yè)面的頭、尾和導(dǎo)航條,這樣在開(kāi)發(fā)時(shí),遇到這些相似的頁(yè)面部分就不需要重新編寫(xiě),而只要在所用到的地方添加這樣一句:重用這部分即可,大大提高了開(kāi)發(fā)效率。2. 三層結(jié)構(gòu)設(shè)計(jì):本系統(tǒng)采用三層結(jié)構(gòu)設(shè)計(jì),即程序邏輯結(jié)構(gòu)分為用戶界面層、業(yè)務(wù)邏輯處理層和數(shù)據(jù)存儲(chǔ)層。3. 面向?qū)ο笤O(shè)計(jì):在系統(tǒng)中將用戶、圖書(shū)等都封裝成相應(yīng)的類,同時(shí)每個(gè)類都有自己對(duì)應(yīng)的操作類,從而再次提高了對(duì)數(shù)據(jù)庫(kù)操作的安全性和程序的可擴(kuò)展性。4. 人性化設(shè)計(jì):本系統(tǒng)導(dǎo)航的另一個(gè)亮點(diǎn)就是導(dǎo)航明晰。這樣,不管客戶位于本 “書(shū)店”的哪個(gè)角落,都不會(huì)迷路
21、。5 網(wǎng)站架設(shè)5.1 開(kāi)發(fā)環(huán)境容器:tomcat5.5容器下運(yùn)行;jdk:j2sdk1.5;操作系統(tǒng):windows xp;數(shù)據(jù)庫(kù):sql server 2000系統(tǒng);jdbc驅(qū)動(dòng) :microsoft sql server 2000 diver for jdbc。5.2 建立站點(diǎn)在tomcat5.5webapps文件夾下以工程的名稱bookshop建立文件夾,然后在bookshop下建立web-inf文件夾,最后在web-inf下建立classes文件夾,lib文件夾及web.xml保存類文件,需要的包存儲(chǔ)信息及配置站點(diǎn)的信息。將microsoft sql server 2000 drive
22、r for jdbc復(fù)制到tomcat5.5webappsbookshopweb-inflib下,即完成站點(diǎn)的配置工作。6 數(shù)據(jù)庫(kù)的設(shè)計(jì)6.1 數(shù)據(jù)庫(kù)的分析數(shù)據(jù)庫(kù)的設(shè)計(jì)通常是以一個(gè)已經(jīng)存在的數(shù)據(jù)庫(kù)管理系統(tǒng)為基礎(chǔ),常用的數(shù)據(jù)庫(kù)管理系統(tǒng)有access,sql server,oracle等。根據(jù)用戶需求和系統(tǒng)分析,本系統(tǒng)采用了sql server 2000數(shù)據(jù)庫(kù)管理系統(tǒng)。在sql server 2000數(shù)據(jù)庫(kù)管理系統(tǒng)中建立名稱為db_bookmanage的數(shù)據(jù)庫(kù)。6.2 數(shù)據(jù)表的結(jié)構(gòu)在名稱為db_bookmanage的數(shù)據(jù)庫(kù)中,根據(jù)項(xiàng)目的需求建立相應(yīng)的數(shù)據(jù)表。圖書(shū)信息表tb_bookinfo用來(lái)保存
23、圖書(shū)詳細(xì)信息。表 db_bookinfo的設(shè)計(jì)結(jié)構(gòu)如表6.1所示。列名數(shù)據(jù)類型長(zhǎng)度允許空isbnvarchar15booknamevarchar200typevarchar50publishervarchar100writervarchar100introducetext16是pricemoney8pdatevarchar50是covervarchar100是intimedatetim8newbookint4commendint4是表6.1 tb_bookinfo的設(shè)計(jì)結(jié)構(gòu)用戶信息表tb_member用來(lái)保存用戶信息。表tb_member的設(shè)計(jì)結(jié)構(gòu)如表6.2 所示。列名數(shù)據(jù)類型長(zhǎng)度允許空idi
24、nt4usernamevarchar20truenamevarchar20passwordvarchar20cityvarchar20addressvarchar100postcodevarchar6cardnovarchar24是cardtypevarchar20是gradeint4是amountmoney8是telvarchar20是emailvarchar100freezeint4是表6.2 tb_member的設(shè)計(jì)結(jié)構(gòu) 訂單信息主表tb_order用來(lái)保存訂單的概要信息。表tb_oder的設(shè)計(jì)結(jié)構(gòu)如表6.3所示。列名數(shù)據(jù)類型長(zhǎng)度允許空orderidbigint8bnumebersmal
25、lint2usernamevarchar15truenamevarchar15addressvarchar100postcodevarchar10telvarchar20emailvarchar100payvarchar20carryvarchar20rebatefloat8orderdatesmalldatetin4bzvarchar200是enforceint4是表6.3 tb_order的設(shè)計(jì)結(jié)構(gòu)訂單信息明細(xì)表tb_order_detail用來(lái)保存訂單的明細(xì)信息。表tb_order_detail的設(shè)計(jì)結(jié)構(gòu)如表6.4所示。列名數(shù)據(jù)類型長(zhǎng)度允許空idbigint8orderidbigint
26、8isbnvarchar 20pricemoney 8numberint 4表6.4 tb_order_detail的設(shè)計(jì)結(jié)構(gòu)折扣信息表tb_rebate用來(lái)保存折扣信息。表的tb_rebate設(shè)計(jì)結(jié)構(gòu)如表6.5所示。列名數(shù)據(jù)類型長(zhǎng)度允許空gradevarchar 20amountmoney8rebatefloat8表6.5 tb_rebate的設(shè)計(jì)結(jié)構(gòu)管理員信息表 tb_manager用來(lái)保存管理員信息。表tb_manager的設(shè)計(jì)結(jié)構(gòu)如圖6.6所示。 列名數(shù)據(jù)類型長(zhǎng)度允許空idint 4contentvarchar 4000intimedatetime8 是圖6.6 表tb_manager
27、的設(shè)計(jì)結(jié)構(gòu)公告信息表tb_bbs用來(lái)保存管理員信息。表tb_bbs的設(shè)計(jì)結(jié)構(gòu)如圖6.7所示。列名數(shù)據(jù)類型長(zhǎng)度允許空idint 4manager varchar 30是pwdvarchar 30圖6.7 表tb_bbs的設(shè)計(jì)結(jié)構(gòu)6.3 視圖在在線書(shū)店中還創(chuàng)建了兩個(gè)視圖。分別為視圖v_member和視圖v_order_detail。視圖v_membe用于顯示用戶信息及該用戶的會(huì)員等級(jí)。創(chuàng)建該視圖的sql語(yǔ)句如下:use db_bookmanagegocreate view v_memberasselect dbo.tb_member.id,dbo.tb_member.truename,dbo.tb
28、_member.city, dbo.tb_member.address,dbo.tb_member.postcode,dbo.tb_member.username,dbo.tb_member.cardno,dbo.tb_member.cardtype,dbo.tb_member.email,dbo.tb_meber.amount,dbo.tb_member.tel,dbo.tb_email,dbo.tb_rebate.rebatefrom dbo.tb_member inner join dbo.tb_rebate on dbo.tb_member.grate=dbo.tb_grade視圖v_
29、order_detail用于顯示訂單的詳細(xì)信息,包括圖書(shū)的基本信息。創(chuàng)建該視圖的sql語(yǔ)句如下:use db_bookmanagegocreate view v_order_detailasselect dbo.tb_order_detail.orderid,dbo.tb_bookinfo.isbn, dbo.tb_bookinfo.bookname,dbo.tb_bookinfo.publisher,dbo.tb_order_detail.price,dbo.tb_order_detail.numberfrom dbo.tb_bookinfo inner join dbo.tb_order_
30、detail on dbo.tb_bookinfo.isbn=dbo.tb_order_detail.isbn 7 javabean技術(shù)在系統(tǒng)中的應(yīng)用javabean是描述java的軟件組件模型,有點(diǎn)類似于microsoft的com組件概念。在java模型中,通過(guò)javabean可以無(wú)限擴(kuò)充java程序的功能,通過(guò)javabean的組合可以快速的生成新的應(yīng)用程序。對(duì)于程序員來(lái)說(shuō),最好的一點(diǎn)就是javabean可以實(shí)現(xiàn)代碼的重復(fù)利用,另外對(duì)于程序的易維護(hù)性等等也有很重大的意義。用戶可以使用javabean將功能、處理、值、數(shù)據(jù)庫(kù)訪問(wèn)和其他任何可以用java代碼創(chuàng)造的對(duì)象進(jìn)行打包,并且其他的開(kāi)發(fā)者
31、可以通過(guò)內(nèi)部的jsp頁(yè)面、servlet、其他javabean、applet程序或者應(yīng)用來(lái)使用這些對(duì)象。用戶可以認(rèn)為javabean提供了一種隨時(shí)隨地的復(fù)制和粘貼的功能,而不用關(guān)心任何改變。javabean的值是通過(guò)一些屬性獲得的,你可通過(guò)這些屬性訪問(wèn)javabean設(shè)置。在線書(shū)店系統(tǒng)中使用的javabean如表7.1所示。javabean說(shuō)明conndb 連接數(shù)據(jù)庫(kù)和操作數(shù)據(jù)庫(kù)chstr字符串處理bookelement保存購(gòu)物信息表7.1 在線書(shū)店系統(tǒng)使用的javabean在開(kāi)發(fā)過(guò)程中經(jīng)常需要對(duì)數(shù)據(jù)庫(kù)操作,這就需要連接數(shù)據(jù)庫(kù)和操作數(shù)據(jù)庫(kù)(包括數(shù)據(jù)的插入、更新、刪除和查詢等),因此將連接數(shù)據(jù)庫(kù)
32、和操作數(shù)據(jù)庫(kù)的代碼寫(xiě)成了一個(gè)javabean“conndb.java”?!癱onndb.java”的代碼如下:package beans;import java.sql.*;public class conndb connection conn=null; statement stmt=null; resultset rs=null; public conndb() try class.forname(com.microsoft.jdbc.sqlserver.sqlserverdriver); catch(java.lang.classnotfoundexception e) system.e
33、rr.println(e.getmessage(); /* *method name:executequery() *功能:執(zhí)行查詢操作 *return value: resultset*/ public resultset executequery(string sql) try conn=drivermanager.getconnection(jdbc:microsoft:sqlserver:/localhost:1433;databasename=db_bookmanage;user=sa;password=111111); stmt=conn.createstatement(resul
34、tset.type_scroll_insensitive,resultset.concur_read_only); rs=stmt.executequery(sql); catch(sqlexception ex) system.err.println(ex.getmessage(); return rs; /* *method name:executeupdate() *功能:執(zhí)行更新操作 *return value: int*/ public int executeupdate(string sql) int result=0; try conn=drivermanager.getconn
35、ection(jdbc:microsoft:sqlserver:/localhost:1433;databasename=db_bookmanage;user=sa;password=111111); stmt=conn.createstatement(resultset.type_scroll_insensitive,resultset.concur_read_only); result=stmt.executeupdate(sql); catch(sqlexception ex) result=0; return result; /* *method name: executeupdate
36、_id()*功能:執(zhí)行更新操作并返回自動(dòng)編號(hào)的值*return value: int*/ public int executeupdate_id(string sql) int result=0; tryconn=drivermanager.getconnection(jdbc:microsoft:sqlserver:/localhost:1433;databasename=db_bookmanage;user=sa;password=111111);stmt=conn.createstatement(resultset.type_scroll_insensitive,resultset.co
37、ncur_read_only); result=stmt.executeupdate(sql); string id=select identity as id; rs=stmt.executequery(id); if(rs.next() int autoid=rs.getint(id); result=autoid; catch(sqlexception ex)result=0;return result; /* *method name:close() *功能:關(guān)閉數(shù)據(jù)庫(kù)鏈接 *return value: void*/ public void close() try if (rs !=
38、null) rs.close(); catch (exception e) e.printstacktrace(system.err); try if (stmt != null) stmt.close(); catch (exception e) e.printstacktrace(system.err); try if (conn != null) conn.close(); catch (exception e) e.printstacktrace(system.err); /* *method name:chstr_in() *method function:change coding
39、 to char(1) *return value: string*/ public string chstr_in(string str) if(str=null) str=; else try str=(new string(str.getbytes(iso-8859-1),gb2312).trim(); str=str.replace(,(char)1); catch(exception e) e.printstacktrace(system.err); return str;/* *method name:chstr_out() *method function:change codi
40、ng char(1) to *return value: string*/ public string chstr_out(string str) if(str=null) str=; else try str=str.replace(char)1,); catch(exception e) e.printstacktrace(system.err); return str; 在開(kāi)發(fā)過(guò)程中經(jīng)常需要考慮中文的亂碼問(wèn)題、過(guò)濾一些特殊字符(如空格與null值等)和顯示文中的回車換行、空格。此功能通常都需要編寫(xiě)一個(gè)獨(dú)立的javabean“chstr.java”完成。在購(gòu)物車程序中需要使用一個(gè)booke
41、lement對(duì)象保存所選圖書(shū)信息,生成該對(duì)象的javabean“bookelement.java”。8 前臺(tái)開(kāi)發(fā)8.1 設(shè)計(jì)分析8.1.1 前臺(tái)文件架構(gòu) 前臺(tái)的設(shè)計(jì)架構(gòu)如圖8.1所示。左側(cè)部分用戶注冊(cè)新到圖書(shū)前 臺(tái) 首 頁(yè)填寫(xiě)訂單生成訂單網(wǎng)站導(dǎo)航圖書(shū)搜索重點(diǎn)推薦后臺(tái)人口顯示搜索結(jié)果添加購(gòu)物車圖書(shū)分類查看購(gòu)物車銷售排行訂單查詢修改數(shù)量移去指定圖書(shū)清空購(gòu)物車購(gòu)物車為空?qǐng)D8.1 前臺(tái)的設(shè)計(jì)架構(gòu)圖8.2 重點(diǎn)推薦圖書(shū)的實(shí)現(xiàn)過(guò)程在網(wǎng)站前臺(tái)的居中位置,分欄列出了書(shū)店推薦的圖書(shū)信息,主要包括圖書(shū)封面、名稱、出版社、作者及定價(jià)等信息。同時(shí)設(shè)置了“添加至購(gòu)物車”按鈕和“查看”按鈕,分別用于將圖書(shū)添加至購(gòu)物車和查
42、看圖書(shū)的詳細(xì)信息。用戶首界面如圖8.2所示圖8.2用戶首界面的運(yùn)行結(jié)果重點(diǎn)推薦圖書(shū)信息同圖書(shū)基本信息同時(shí)保存在圖書(shū)信息表tb_bookinfo中,以字段commend標(biāo)識(shí),當(dāng)commend字段的值為1時(shí),代表該圖書(shū)為重點(diǎn)推薦圖書(shū)。查詢重點(diǎn)推薦圖書(shū)的代碼如下:需要注意的是,“添加至購(gòu)物車”按鈕只有在用戶登錄后才可以顯示,也就是說(shuō),只有登錄的用戶才可以購(gòu)買(mǎi)圖書(shū)。當(dāng)用戶單擊“查看”按鈕后,可以查看圖書(shū)的詳細(xì)信息。實(shí)現(xiàn)此功能的方法是:在“查看”按鈕的onclick事件中,將頁(yè)面連接到book_detail.jsp頁(yè)面并傳遞相應(yīng)的圖書(shū)isbn號(hào),然后在顯示詳細(xì)信息頁(yè)面中通過(guò)isbn號(hào)進(jìn)行檢索即可。圖書(shū)詳
43、細(xì)信息頁(yè)面的運(yùn)行結(jié)果如圖8.3所示。 圖8.3 圖書(shū)詳細(xì)信息頁(yè)面運(yùn)行結(jié)果在book_detail.jsp頁(yè)面中首先查詢符合isbn值的圖書(shū)信息,關(guān)鍵代碼如下:將查詢結(jié)果顯示到頁(yè)面中,此時(shí)需要對(duì)“圖書(shū)簡(jiǎn)介”進(jìn)行處理,以便正確顯示回車換行和空格符。8.3 新到圖書(shū)實(shí)現(xiàn)過(guò)程在前臺(tái)首頁(yè)中單擊“新到圖書(shū)”超鏈接可以進(jìn)入新到圖書(shū)頁(yè)面newbook.jsp,在該頁(yè)面中顯示了全部的新到圖書(shū)的重點(diǎn)信息,用戶可以單擊書(shū)名超鏈接查看圖書(shū)的詳細(xì)信息。新到圖書(shū)頁(yè)面運(yùn)行結(jié)果如圖8.4所示。圖8.4 新到圖書(shū)頁(yè)面的運(yùn)行結(jié)果新到圖書(shū)信息保存在圖書(shū)信息表tb_bookinfo中,以字段newbook標(biāo)識(shí),當(dāng)newbook字段的
44、值為1時(shí),代表圖書(shū)為新書(shū)。8.4 圖書(shū)分類實(shí)現(xiàn)過(guò)程為了方便用戶查詢所需圖書(shū)信息,在網(wǎng)站中設(shè)置了圖書(shū)分類顯示模塊。單擊導(dǎo)航條中的“圖書(shū)分類”超鏈接即可進(jìn)入到圖書(shū)分類顯示頁(yè)面,在該頁(yè)面左側(cè)的“圖書(shū)分類列表”中列出了數(shù)據(jù)庫(kù)中的全部圖書(shū)類別,用戶單擊某類別即可在右側(cè)顯示該類別的圖書(shū)信息列表,單擊書(shū)名可以查看相應(yīng)圖書(shū)的詳細(xì)信息。如果用戶已經(jīng)登錄,還可以直接將圖書(shū)信息添加至購(gòu)物車中。圖書(shū)分類頁(yè)面運(yùn)行結(jié)果如圖8.5所示。圖8.5 圖書(shū)分類頁(yè)面的運(yùn)行結(jié)果在圖書(shū)分類頁(yè)面booksort.jsp左側(cè)的“圖書(shū)分類列表”中列出了數(shù)據(jù)庫(kù)中的全部圖書(shū)類別。查詢圖書(shū)類別主要通過(guò)select語(yǔ)句的group by子句實(shí)現(xiàn)。
45、顯示圖書(shū)分類信息時(shí),需要注意的是,不能再使用while語(yǔ)句,而應(yīng)該使用dowhile語(yǔ)句,否則將少一條記錄了,這是因?yàn)樵谥付▓D書(shū)默認(rèn)類別時(shí),已經(jīng)應(yīng)用rs_type.next()語(yǔ)句將記錄指針移動(dòng)到下一條記錄了。在圖書(shū)分類頁(yè)面booksort.jsp的右側(cè)的圖書(shū)列表區(qū)中將顯示類別的圖書(shū)信息。當(dāng)用戶沒(méi)有選擇類別時(shí),可以通過(guò)獲取類別結(jié)果rs_type中的第1條記錄的值指定默認(rèn)類別,否則應(yīng)用request對(duì)象的getparameter方法來(lái)獲取選擇的類別并查詢。8.5 用戶管理實(shí)現(xiàn)過(guò)程用戶管理主要包括用戶注冊(cè)、用戶登錄、用戶個(gè)人資料修改,由于用戶個(gè)人資料修改比較簡(jiǎn)單,此處不做介紹。下面只對(duì)用戶注冊(cè)和用
46、戶登錄進(jìn)行介紹。8.5.1 用戶注冊(cè)為了統(tǒng)一管理,在線書(shū)店規(guī)定只有會(huì)員用戶才可以購(gòu)買(mǎi)圖書(shū),所以要想購(gòu)買(mǎi)圖書(shū)的新用戶必須先進(jìn)行用戶注冊(cè)。用戶注冊(cè)的入口位置在網(wǎng)站首頁(yè)的左側(cè)。用戶單擊“注冊(cè)”按鈕即可進(jìn)入到用戶注冊(cè)頁(yè)面,該頁(yè)面的運(yùn)行結(jié)果如圖8.6所示。圖8.6 用戶注冊(cè)頁(yè)面的運(yùn)行結(jié)果網(wǎng)站要求用戶名必須唯一,為了方便用戶,在用戶注冊(cè)頁(yè)面設(shè)置了“檢測(cè)用戶名”的超鏈接,用戶可以先檢測(cè)自己的用戶名是否已經(jīng)被注冊(cè)。但是由于是網(wǎng)絡(luò)程序,難免會(huì)出現(xiàn)檢測(cè)時(shí)并沒(méi)有被占用,但是保存信息時(shí),卻已經(jīng)被占用的情況,所以在保存用戶信息時(shí),還需要再次對(duì)注冊(cè)的用戶進(jìn)行檢測(cè),則保存該用戶信息如果不存在,否則提示用戶該用戶已經(jīng)被占用,請(qǐng)重新注冊(cè)。8.5.2 用戶登錄當(dāng)用戶在登錄窗口中輸入用戶名和密碼并單擊“登錄”按鈕后,系統(tǒng)將對(duì)輸入的用戶名和密碼進(jìn)行驗(yàn)證,如果用戶輸入的用戶名存在并且信用字段的值為1,則判斷用戶輸入的密碼是否正確,如果密碼也正確,則重新進(jìn)入網(wǎng)站首頁(yè),顯示登錄用戶的用戶名、“修改資料”按鈕、“退出”按鈕,否則提示登錄失敗。8.6 購(gòu)物車實(shí)現(xiàn)過(guò)程這里所說(shuō)的購(gòu)物車可以理解為現(xiàn)實(shí)生活中超市的購(gòu)物車,用于暫時(shí)保存挑選的圖書(shū)(商品)。購(gòu)物車主要包括所選圖
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- DDN線路密碼機(jī)相關(guān)項(xiàng)目投資計(jì)劃書(shū)
- 互聯(lián)網(wǎng)信息服務(wù)相關(guān)項(xiàng)目投資計(jì)劃書(shū)
- 慢性疼痛管理與康復(fù)治療考核試卷
- 木材識(shí)別與木片品質(zhì)檢測(cè)考核試卷
- 光學(xué)標(biāo)尺的精度檢測(cè)方法考核試卷
- 圖書(shū)館管理考核試卷
- 2025年院前急救信息系統(tǒng)項(xiàng)目合作計(jì)劃書(shū)
- 2025年房屋和土木工程服務(wù)項(xiàng)目合作計(jì)劃書(shū)
- 2025年機(jī)房溫控節(jié)能項(xiàng)目發(fā)展計(jì)劃
- 科技企業(yè)的網(wǎng)絡(luò)安全管理與技術(shù)創(chuàng)新
- 2024-2030年中國(guó)醫(yī)療器械維修設(shè)備行業(yè)供需狀況及發(fā)展策略分析報(bào)告
- 中國(guó)心力衰竭診斷和治療指南2024解讀(完整版)
- 女性健康知識(shí)講座課件
- DB11T 1787-2020 二氧化碳排放核算和報(bào)告要求 其他行業(yè)
- 企業(yè)網(wǎng)絡(luò)安全管理規(guī)范作業(yè)指導(dǎo)書(shū)
- 2024年大學(xué)試題(計(jì)算機(jī)科學(xué))-人工智能考試近5年真題集錦(頻考類試題)帶答案
- 高空作業(yè)的技術(shù)交底
- 稅收基礎(chǔ)知識(shí)考試題及答案
- 方太電烤箱KQD50F-01使用說(shuō)明書(shū)
- 2024-2030年中國(guó)碳酸氫銨行業(yè)市場(chǎng)發(fā)展趨勢(shì)與前景展望戰(zhàn)略分析報(bào)告
- 幼兒園教師資格考試面試2024年下半年試題及解答
評(píng)論
0/150
提交評(píng)論