基于JAVA的在線購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-計(jì)算機(jī)畢業(yè)設(shè)計(jì)_第1頁(yè)
基于JAVA的在線購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-計(jì)算機(jī)畢業(yè)設(shè)計(jì)_第2頁(yè)
基于JAVA的在線購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-計(jì)算機(jī)畢業(yè)設(shè)計(jì)_第3頁(yè)
基于JAVA的在線購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-計(jì)算機(jī)畢業(yè)設(shè)計(jì)_第4頁(yè)
基于JAVA的在線購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-計(jì)算機(jī)畢業(yè)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩39頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、畢業(yè)設(shè)計(jì)(論文)基于Java的在線購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)論文作者姓名:申請(qǐng)學(xué)位專(zhuān)業(yè):申請(qǐng)學(xué)位類(lèi)別:指導(dǎo)教師姓名職稱(chēng):論文提交日期:基于Java的在線購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘 要電子商務(wù)(Electronic Commerce)是互聯(lián)網(wǎng)上出現(xiàn)的新概念。它是利用計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)和遠(yuǎn)程通信技術(shù),實(shí)現(xiàn)整個(gè)商務(wù)(買(mǎi)賣(mài))過(guò)程中的電子化、數(shù)字化和網(wǎng)絡(luò)化。隨著它的廣泛使用,給人們帶來(lái)了便利,并逐漸改變了人們的生活方式. 國(guó)內(nèi)在線購(gòu)物網(wǎng)站多數(shù)是用ASP,PHP技術(shù)實(shí)現(xiàn)的,而基于JSP的優(yōu)秀網(wǎng)站較少。本系統(tǒng)網(wǎng)上圖書(shū)超市采用JSP+JavaBean+ SQL Server數(shù)據(jù)庫(kù)三層模式設(shè)計(jì)并實(shí)現(xiàn)。本論文詳細(xì)地闡述了

2、系統(tǒng)的需求分析、系統(tǒng)總體架構(gòu)、詳細(xì)設(shè)計(jì)以及模塊的實(shí)現(xiàn)過(guò)程,主要實(shí)現(xiàn)了以下模塊功能:會(huì)員注冊(cè)、登錄/注銷(xiāo);用戶(hù)管理;瀏覽圖書(shū)詳細(xì)信息;圖書(shū)搜索;圖書(shū)管理;購(gòu)物車(chē);訂單;訂單管理等。關(guān)鍵詞: JSP;SQL Server;JavaBean;在線購(gòu)物Design and Implementation of online shopping system based on JavaAbstractElectronic commence over Internet is a new concept. To realize electronic, digital and networking commerc

3、e, computer technology, network technology and HYPERLINK :/dict /dict_result.aspx?r=1&t=telecommunications&searchword=%e8%bf%9c%e7%a8%8b%e9%80%9a%e4%bf%a1%e6%8a%80%e6%9c%af telecommunications are used. With its widely used, it brings people with a lot of convenience, and is changing the way of peopl

4、es life.Most domestic online shopping websites are implemented with ASP, PHP, and few are based on JSP. This systemweb-based bookstore is implemented with JSP, JavaBean, and SQL Server database in three-tier model. In the paper, HYPERLINK :/dict /dict_result.aspx?r=1&t=requirements+analysis&searchwo

5、rd=%e9%9c%80%e6%b1%82%e5%88%86%e6%9e%90 requirements analysis, general framework, HYPERLINK :/dict /dict_result.aspx?r=1&t=detailed+design&searchword=%e8%af%a6%e7%bb%86%e8%ae%be%e8%ae%a1 detailed design and realization of each module are introduced. These modules includes member registration, login

6、in/login out, user management, browsing books detailed information, searching book, library management, the shopping car, orders and orders management etc. Key words: JSP;SQL Server;JavaBean; Online Shopping目 錄論文總頁(yè)數(shù):29頁(yè) TOC o 1-3 h z u HYPERLINK l _Toc169604652 1引言 PAGEREF _Toc169604652 h 1 HYPERLIN

7、K l _Toc169604653 1.1課題背景 PAGEREF _Toc169604653 h 1 HYPERLINK l _Toc169604654 1.2國(guó)內(nèi)外研究現(xiàn)狀 PAGEREF _Toc169604654 h 1 HYPERLINK l _Toc169604655 1.3本課題的研究方法 PAGEREF _Toc169604655 h 2 HYPERLINK l _Toc169604656 2關(guān)于JSP PAGEREF _Toc169604656 h 2 HYPERLINK l _Toc169604657 2.1JSP簡(jiǎn)介 PAGEREF _Toc169604657 h 2 H

8、YPERLINK l _Toc169604658 2.2JSP的運(yùn)行原理 PAGEREF _Toc169604658 h 2 HYPERLINK l _Toc169604659 2.3JSP頁(yè)面的組成 PAGEREF _Toc169604659 h 3 HYPERLINK l _Toc169604660 2.4JSP的運(yùn)行環(huán)境 PAGEREF _Toc169604660 h 3 HYPERLINK l _Toc169604661 2.5JavaBean技術(shù)介紹 PAGEREF _Toc169604661 h 4 HYPERLINK l _Toc169604662 3需求分析 PAGEREF _

9、Toc169604662 h 4 HYPERLINK l _Toc169604663 3.1系統(tǒng)說(shuō)明 PAGEREF _Toc169604663 h 4 HYPERLINK l _Toc169604664 3.2系統(tǒng)功能簡(jiǎn)介 PAGEREF _Toc169604664 h 4 HYPERLINK l _Toc169604665 4系統(tǒng)設(shè)計(jì) PAGEREF _Toc169604665 h 5 HYPERLINK l _Toc169604666 4.1功能模塊 PAGEREF _Toc169604666 h 5 HYPERLINK l _Toc169604667 4.2系統(tǒng)設(shè)計(jì)思想 PAGEREF

10、 _Toc169604667 h 6 HYPERLINK l _Toc169604668 4.3系統(tǒng)總體流程 PAGEREF _Toc169604668 h 6 HYPERLINK l _Toc169604669 4.4網(wǎng)站架設(shè) PAGEREF _Toc169604669 h 7 HYPERLINK l _Toc169604670 4.4.1開(kāi)發(fā)環(huán)境 PAGEREF _Toc169604670 h 7 HYPERLINK l _Toc169604671 4.4.2建立站點(diǎn) PAGEREF _Toc169604671 h 7 HYPERLINK l _Toc169604672 4.5數(shù)據(jù)庫(kù)設(shè)計(jì)

11、PAGEREF _Toc169604672 h 7 HYPERLINK l _Toc169604673 5系統(tǒng)實(shí)現(xiàn) PAGEREF _Toc169604673 h 9 HYPERLINK l _Toc169604674 5.1編寫(xiě)JavaBean PAGEREF _Toc169604674 h 9 HYPERLINK l _Toc169604675 5.1.1數(shù)據(jù)庫(kù)操作的JavaBean的實(shí)現(xiàn) PAGEREF _Toc169604675 h 10 HYPERLINK l _Toc169604676 5.1.2字符串處理的JavaBean的實(shí)現(xiàn) PAGEREF _Toc169604676 h 1

12、0 HYPERLINK l _Toc169604677 5.1.3保存購(gòu)物信息的JavaBean的實(shí)現(xiàn) PAGEREF _Toc169604677 h 10 HYPERLINK l _Toc169604679 5.2網(wǎng)站前臺(tái)主要功能模塊實(shí)現(xiàn) PAGEREF _Toc169604679 h 11 HYPERLINK l _Toc169604680 5.2.1網(wǎng)站前臺(tái)首頁(yè)設(shè)計(jì) PAGEREF _Toc169604680 h 11 HYPERLINK l _Toc169604681 5.2.2重點(diǎn)推薦展臺(tái)的實(shí)現(xiàn)過(guò)程 PAGEREF _Toc169604681 h 11 HYPERLINK l _To

13、c169604682 5.2.3新書(shū)上架實(shí)現(xiàn)過(guò)程 PAGEREF _Toc169604682 h 13 HYPERLINK l _Toc169604683 5.2.4圖書(shū)分類(lèi)實(shí)現(xiàn)過(guò)程 PAGEREF _Toc169604683 h 13 HYPERLINK l _Toc169604684 5.2.5用戶(hù)管理實(shí)現(xiàn)過(guò)程 PAGEREF _Toc169604684 h 14 HYPERLINK l _Toc169604685 5.2.6購(gòu)物車(chē)實(shí)現(xiàn)過(guò)程 PAGEREF _Toc169604685 h 15 HYPERLINK l _Toc169604686 5.2.7生成訂單實(shí)現(xiàn)過(guò)程 PAGEREF

14、_Toc169604686 h 19 HYPERLINK l _Toc169604687 5.2.8訂單查詢(xún)實(shí)現(xiàn)過(guò)程 PAGEREF _Toc169604687 h 20 HYPERLINK l _Toc169604688 5.2.9銷(xiāo)售排行實(shí)現(xiàn)過(guò)程 PAGEREF _Toc169604688 h 20 HYPERLINK l _Toc169604689 5.3網(wǎng)站后臺(tái)主要功能模塊設(shè)計(jì) PAGEREF _Toc169604689 h 21 HYPERLINK l _Toc169604690 5.3.1后臺(tái)登錄實(shí)現(xiàn)過(guò)程 PAGEREF _Toc169604690 h 21 HYPERLINK l

15、 _Toc169604691 5.3.2圖書(shū)管理頁(yè)面實(shí)現(xiàn)過(guò)程 PAGEREF _Toc169604691 h 21 HYPERLINK l _Toc169604692 5.3.3用戶(hù)管理實(shí)現(xiàn)過(guò)程 PAGEREF _Toc169604692 h 23 HYPERLINK l _Toc169604693 5.3.4訂單管理實(shí)現(xiàn)過(guò)程 PAGEREF _Toc169604693 h 24 HYPERLINK l _Toc169604694 5.3.5公告管理實(shí)現(xiàn)過(guò)程 PAGEREF _Toc169604694 h 25 HYPERLINK l _Toc169604695 5.3.6退出系統(tǒng)實(shí)現(xiàn)過(guò)程 P

16、AGEREF _Toc169604695 h 25 HYPERLINK l _Toc169604696 6系統(tǒng)測(cè)試 PAGEREF _Toc169604696 h 25 HYPERLINK l _Toc169604697 6.1測(cè)試環(huán)境 PAGEREF _Toc169604697 h 25 HYPERLINK l _Toc169604698 6.2測(cè)試結(jié)果 PAGEREF _Toc169604698 h 26 HYPERLINK l _Toc169604699 總 結(jié) PAGEREF _Toc169604699 h 26 HYPERLINK l _Toc169604700 參考文獻(xiàn) PAGER

17、EF _Toc169604700 h 27 HYPERLINK l _Toc169604701 致 謝 PAGEREF _Toc169604701 h 28 HYPERLINK l _Toc169604702 聲 明 PAGEREF _Toc169604702 h 29 引言課題背景隨著Internet國(guó)際互聯(lián)網(wǎng)的開(kāi)展,越來(lái)越多的企業(yè)開(kāi)始建造自己的網(wǎng)站?;贗nternet的信息效勞,商務(wù)效勞已經(jīng)成為現(xiàn)代企業(yè)一項(xiàng)不可缺少的內(nèi)容。很多企業(yè)都已不滿(mǎn)足于建立一個(gè)簡(jiǎn)單的僅僅能夠發(fā)布信息的靜態(tài)網(wǎng)站?,F(xiàn)代企業(yè)需要的是一個(gè)功能強(qiáng)大的,能提供完善的電子商務(wù)效勞的動(dòng)態(tài)商務(wù)網(wǎng)站。JSP是Sun公司推出的一種網(wǎng)站開(kāi)

18、發(fā)技術(shù),Sun公司借助自己在Java上的非凡造詣,又把人們引進(jìn)JSP時(shí)代,JSP即Java Server Page,它可以在Servlet和JavaBean的支持下,完成功能強(qiáng)大的Web應(yīng)用程序。JSP網(wǎng)站架設(shè)將成為未來(lái)網(wǎng)站架設(shè)的趨勢(shì),而國(guó)內(nèi)電子購(gòu)物網(wǎng)站多數(shù)是用ASP,PHP技術(shù)實(shí)現(xiàn)的,而基于JSP的優(yōu)秀網(wǎng)站較少。所以,在我的畢業(yè)設(shè)計(jì)中,我采用了JSP作為開(kāi)發(fā)工具,構(gòu)建了一個(gè)能實(shí)現(xiàn)簡(jiǎn)單的電子商務(wù)的小型動(dòng)態(tài)商務(wù)網(wǎng)站網(wǎng)上圖書(shū)超市銷(xiāo)售系統(tǒng)。該系統(tǒng)能實(shí)現(xiàn)用戶(hù)的注冊(cè)、登錄功能;能夠?qū)崿F(xiàn)商品的查詢(xún),訂購(gòu)等功能。該系統(tǒng)根本上具備一個(gè)網(wǎng)上商品銷(xiāo)售系統(tǒng)應(yīng)該具備的功能,該設(shè)計(jì)工程根本上表達(dá)了構(gòu)建一個(gè)動(dòng)態(tài)商務(wù)網(wǎng)站所

19、需要的技術(shù),可以說(shuō),目前的大型商務(wù)網(wǎng)站也就是我們這個(gè)小型網(wǎng)站在內(nèi)容上的擴(kuò)充和重復(fù)。國(guó)內(nèi)外研究現(xiàn)狀伴隨著Internet向我們大踏步走來(lái),國(guó)內(nèi)外網(wǎng)上交易已開(kāi)始逐步普及,電子商務(wù)將成為21世紀(jì)主流的商業(yè)模式。網(wǎng)上圖書(shū)超市作為電子商務(wù)中的一種,是隨著這些網(wǎng)絡(luò)技術(shù)的開(kāi)展而出現(xiàn)的一種新型圖書(shū)銷(xiāo)售渠道。它通過(guò)人與電子通信方式的結(jié)合,依靠計(jì)算機(jī)網(wǎng)絡(luò),以通訊技術(shù)為根底,實(shí)現(xiàn)圖書(shū)銷(xiāo)售的網(wǎng)上交易。網(wǎng)上圖書(shū)超市同傳統(tǒng)的店面書(shū)店相比,網(wǎng)上圖書(shū)超市的經(jīng)營(yíng)方式和銷(xiāo)售渠道是全新的;它24小時(shí)的全天候和全方位效勞是店面書(shū)店所不能比及的;本錢(qián)低廉更是開(kāi)設(shè)網(wǎng)上圖書(shū)超市的主要原因。而與其他商品相比,書(shū)籍運(yùn)送幾乎不怕碰撞碎裂,不具時(shí)

20、效性;同時(shí)書(shū)本具有功能單一,形式簡(jiǎn)單,易于判斷和選擇而獨(dú)具優(yōu)勢(shì),最適合于網(wǎng)上交易;再次是單價(jià)低,降低了消費(fèi)者第一次在網(wǎng)絡(luò)購(gòu)物的門(mén)檻,所以網(wǎng)上圖書(shū)超市成了電子商務(wù)的先鋒?,F(xiàn)在這一切正在朝著更人性化的方向開(kāi)展。隨著Internet技術(shù)的迅速開(kāi)展和日益普及,市場(chǎng)競(jìng)爭(zhēng)日益劇烈,利用網(wǎng)絡(luò)進(jìn)行效勞和管理已經(jīng)成為一種趨勢(shì).網(wǎng)絡(luò)的開(kāi)展給用戶(hù)帶來(lái)了很大的方便, 風(fēng)起云涌的網(wǎng)站在炒足了概念之后,都紛紛轉(zhuǎn)向了務(wù)實(shí),而務(wù)實(shí)比擬鮮明的特點(diǎn)之一:是絕大多數(shù)的網(wǎng)站都在試圖做實(shí)實(shí)在在的網(wǎng)上交易,所謂網(wǎng)上交易就是利用計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)和遠(yuǎn)程通信技術(shù),實(shí)現(xiàn)整個(gè)商務(wù)(買(mǎi)賣(mài))過(guò)程中的電子化、數(shù)字化和網(wǎng)絡(luò)化,它具有如下優(yōu)勢(shì):(1)更

21、廣闊的環(huán)境:人們不受時(shí)間的限制,不受空間的限制,不受傳統(tǒng)購(gòu)物的諸多限制,可以隨時(shí)隨地在網(wǎng)上交易。(2)更廣闊的市場(chǎng):在網(wǎng)上這個(gè)世界將會(huì)變得很小,一個(gè)商家可以面對(duì)全球的消費(fèi)者,而一個(gè)消費(fèi)者可以在全球的任何一家超市購(gòu)物。 (3)更快速的流通和低廉的價(jià)格:網(wǎng)上超市減少了商品流通的中間環(huán)節(jié),節(jié)省了大量的開(kāi)支,從而也大大降低了商品流通和交易的本錢(qián)。(4)更符合時(shí)代的要求:如今人們?cè)絹?lái)越追求時(shí)尚、講究個(gè)性,注重購(gòu)物的環(huán)境, 網(wǎng)上購(gòu)物,更能表達(dá)個(gè)性化的購(gòu)物過(guò)程。本課題的研究方法本次畢業(yè)設(shè)計(jì)應(yīng)首先分析淘寶網(wǎng)、易趣網(wǎng)等購(gòu)物網(wǎng)站的相關(guān)功能,結(jié)合本次畢業(yè)設(shè)計(jì)的相關(guān)要求寫(xiě)出需求分析;其次,綜合運(yùn)用以前所學(xué)的相關(guān)知識(shí)包

22、括計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、相關(guān)協(xié)議、信息平安、JSP等相關(guān)知識(shí)等,選擇所熟悉的開(kāi)發(fā)工具進(jìn)行本畢業(yè)設(shè)計(jì)的開(kāi)發(fā);在設(shè)計(jì)中以需求分析為根底,寫(xiě)出系統(tǒng)開(kāi)發(fā)方案、實(shí)現(xiàn)流程及相關(guān)問(wèn)題的實(shí)現(xiàn)方法。關(guān)于JSPJSP簡(jiǎn)介JSPJava Server Pages是一種建立在Servlet標(biāo)準(zhǔn)提供的功能之上的動(dòng)態(tài)網(wǎng)頁(yè)技術(shù),和ASP類(lèi)似,它們都是在通常的網(wǎng)頁(yè)文件中嵌入腳本代碼,用于產(chǎn)生動(dòng)態(tài)內(nèi)容,不過(guò)JSP文件中嵌入的是JAVA代碼和JSP標(biāo)記。JSP文件在用戶(hù)第一次請(qǐng)求時(shí),會(huì)被編譯成Servlet,然后由這個(gè)Servlet處理用戶(hù)的請(qǐng)求,所以JSP也可以看成是運(yùn)行時(shí)的Servlet。Servlet是JAVA對(duì)CGI的回應(yīng)。它

23、們?cè)谛谄魃蠄?zhí)行和解釋瀏覽器的請(qǐng)求,承當(dāng)客戶(hù)端和其他應(yīng)用程序之間的中間層的角色。Servlet主要是把動(dòng)態(tài)的內(nèi)容混合到靜態(tài)的內(nèi)容中以產(chǎn)生HTML。JSP頁(yè)面在HTML元素中潛入JAVA腳本代碼和JSP標(biāo)記,使得文件長(zhǎng)度變短,格式更加清晰。另一方面,JSP把靜態(tài)和動(dòng)態(tài)的內(nèi)容別離開(kāi)來(lái),實(shí)現(xiàn)了內(nèi)容和表示的別離。使用JSP,不需要單獨(dú)配置每一個(gè)文件,只要擴(kuò)展名是.jsp,JSP容器也是Servlet容器就會(huì)自動(dòng)識(shí)別,將其轉(zhuǎn)換為Servlet為客戶(hù)端效勞。術(shù)語(yǔ)WEB容器和JSP容器是同義的。JSP的運(yùn)行原理在JSP第一次獲得來(lái)自于客戶(hù)端瀏覽器的請(qǐng)求時(shí),JSP文件將被JSP引擎JSP engine轉(zhuǎn)換成一

24、個(gè)Servlet,即將.jsp文件編譯成Java Class文件。當(dāng)Servlet引擎接收到請(qǐng)求后,如果設(shè)置了使用最新的JSP,它就會(huì)去找JSP文件,檢查該文件在上次編譯后是否改動(dòng)過(guò)。如果改動(dòng)過(guò),就會(huì)重新編譯生成新的Servlet,最終將請(qǐng)求轉(zhuǎn)交給編譯好的Servlet引擎執(zhí)行。在編譯時(shí)如果發(fā)現(xiàn)JSP文件有任何語(yǔ)法錯(cuò)誤,轉(zhuǎn)換過(guò)程將中斷,并向客戶(hù)端發(fā)出出錯(cuò)信息;如果編譯成功,那么所轉(zhuǎn)換產(chǎn)生的Servlet代碼被編譯,然后該Servlet被JSP引擎加載到內(nèi)存中。此時(shí)JSP引擎還請(qǐng)求了jspInit()方法的執(zhí)行,并對(duì)此Servlet初始化。JspInit()方法在Servlet的生命周期中只被請(qǐng)

25、求一次,然后將被調(diào)用來(lái)處理客戶(hù)端的請(qǐng)求和回復(fù)操作。對(duì)于所有隨后對(duì)該JSP文件的請(qǐng)求,效勞器將檢查該JSP文件自最后一次被存取后是否經(jīng)過(guò)修改。如果沒(méi)有修改,那么將請(qǐng)求交還給還在內(nèi)存中的Servlet的jspService()方法,執(zhí)行回復(fù)操作。由于Servlet始終駐于內(nèi)存,所以響應(yīng)是非??斓摹sp頁(yè)面在第一次訪問(wèn)時(shí)由于要轉(zhuǎn)化和編譯,運(yùn)行速度較慢,但是當(dāng)?shù)诙卧L問(wèn)該頁(yè)時(shí),由于文件已經(jīng)被編譯成字節(jié)碼文件了,所以速度非常得快。JSP頁(yè)面的組成JSP頁(yè)面看上去像標(biāo)準(zhǔn)的HTML和XML頁(yè)面,并附帶有JSP引擎能夠處理和解析執(zhí)行的代碼與組件。通常,JSP代碼和組件用于創(chuàng)立在最終頁(yè)面上顯示的文本。通常來(lái)說(shuō)

26、,JSP頁(yè)面包括編譯指令,聲明,表達(dá)式等內(nèi)容。(1)編譯指令:使用JSP編譯指令% 和 %內(nèi)的來(lái)指定所使用的腳本語(yǔ)言,Servlet實(shí)現(xiàn)的接口,Servlet擴(kuò)展的類(lèi),Servlet導(dǎo)入的軟件包。JSP指令的一般語(yǔ)法形式為:。 (2)聲明:用于聲明合法的變量和方法。與任何語(yǔ)言相同,JSP語(yǔ)言使用變量來(lái)保存數(shù)據(jù)。這些變量用declaration元素聲明,聲明的語(yǔ)法為。當(dāng)頁(yè)面被初始化的時(shí)候,JSP頁(yè)面中的所有聲明都被初始化。除了簡(jiǎn)單的變量,方法也能被聲明。聲明不對(duì)當(dāng)前的輸出流產(chǎn)生任何影響。(3)表達(dá)式:通過(guò)計(jì)算表達(dá)式所得到的結(jié)果來(lái)表示某個(gè)值。表達(dá)式的形式為:。表達(dá)式求值的結(jié)果被強(qiáng)制轉(zhuǎn)換為一個(gè)字符串

27、,并插入到當(dāng)前的輸出流中。JSP的運(yùn)行環(huán)境要運(yùn)行Jsp注意,不是瀏覽Jsp頁(yè)面,需要有支持Jsp的效勞器。這里分2種情況:一種是自身就支持Jsp的效勞器,如Jrun,Weblogic,JSWDK等;而另一種那么是在不支持Jsp的效勞器上安裝Jsp引擎的插件,如在IIS,Apache等效勞器上安裝WebSphere,tomcat,Resin等插件。其中主流效勞器是Weblogic和tomcat.Tomcat效勞器是Apache Group Jakarta小組開(kāi)發(fā)的一個(gè)免費(fèi)效勞器軟件,適合于嵌入Apache中使用,而且,它的源代碼可以免費(fèi)獲得,你可以自由地對(duì)它進(jìn)行擴(kuò)充。訪問(wèn)的地址 :/jakart

28、a. /tomacat/index.html, Tomcat效勞器的兼容性很好,如WebLogic效勞器采用其為Web效勞器引擎,Jbuilder將其作為標(biāo)準(zhǔn)的測(cè)試效勞器,Sun公司也將其作為JSP技術(shù)應(yīng)用的例如效勞器。缺乏之處是它的配置比擬麻煩,而且有一些平安性的問(wèn)題沒(méi)有解決。但是Tomcat效勞器有眾多大軟件公司的支持,而且效勞器的性能穩(wěn)定,其開(kāi)展前景很好。JavaBean技術(shù)介紹JavaBean技術(shù)是一種基于Java的組件技術(shù),JavaBean組件可以用來(lái)執(zhí)行復(fù)雜的計(jì)算任務(wù),或負(fù)責(zé)與數(shù)據(jù)庫(kù)的交互以及數(shù)據(jù)的提取等,是解決代碼重用問(wèn)題的一種策略。以前的組件無(wú)法實(shí)現(xiàn)真正的代碼重用,其主要原因就

29、是它們對(duì)于處理平臺(tái)的依賴(lài)和對(duì)開(kāi)發(fā)語(yǔ)言的依賴(lài)過(guò)重。由于Java語(yǔ)言在這些方面所具有的特點(diǎn)和優(yōu)勢(shì),使得基于它的軟件JavaBean組件技術(shù)倍受人們的關(guān)注。它的任務(wù)就是:一次編寫(xiě),可以在任何地方執(zhí)行,可以在任何地方重用。JavaBean組件可以在任何地方?jīng)_用包括了可以在應(yīng)用程序、其他組件、文檔、Web站點(diǎn)和應(yīng)用程序構(gòu)造器工具等多種方案中再利用。為了創(chuàng)立和使用Java軟件組件,JavaBean被實(shí)現(xiàn)為一種獨(dú)立于平臺(tái)和結(jié)構(gòu)的應(yīng)用程序接口,它的實(shí)現(xiàn)可忽略?xún)?nèi)部的結(jié)構(gòu)及細(xì)節(jié)問(wèn)題,只需要定義其外部的特征及對(duì)外功能就行。其中,屬性、方法和事件三種接口可以獨(dú)立對(duì)外進(jìn)行開(kāi)發(fā)。JavaBean的實(shí)質(zhì)就是一個(gè).class

30、文件,也可以成為類(lèi)文件。JavaBean以binary格式保存,可以保護(hù)Java源代碼不容易被他人抄襲。需求分析系統(tǒng)說(shuō)明本系統(tǒng)是一個(gè)中小型的電子商務(wù)系統(tǒng)網(wǎng)上圖書(shū)超市,可以為各類(lèi)用戶(hù)提供方便的在線買(mǎi)書(shū)環(huán)境,符合目前國(guó)內(nèi)流行的電子商務(wù)模式。用戶(hù)可以在系統(tǒng)中實(shí)現(xiàn)注冊(cè)、瀏覽圖書(shū)、搜索查詢(xún)圖書(shū)、下訂單、處理訂單等功能;管理員可以通過(guò)用戶(hù)管理、訂單管理、圖書(shū)管理、公告管理、投票管理等管理功能來(lái)對(duì)系統(tǒng)進(jìn)行維護(hù)更新。系統(tǒng)功能簡(jiǎn)介網(wǎng)上圖書(shū)超市系統(tǒng)是一個(gè)典型的JSP數(shù)據(jù)庫(kù)開(kāi)發(fā)應(yīng)用程序,由前臺(tái)商品展示及銷(xiāo)售、后臺(tái)管理2局部組成。前臺(tái)商品展示及銷(xiāo)售該局部主要包括新書(shū)上架、重點(diǎn)推薦、銷(xiāo)售排行、購(gòu)物車(chē)、會(huì)員管理、收銀臺(tái)及

31、訂單查詢(xún)、商品查詢(xún)等。后臺(tái)管理該局部主要對(duì)商城內(nèi)的一些根底數(shù)據(jù)進(jìn)行有效管理,包括圖書(shū)管理、用戶(hù)管理、訂單管理、公告管理等。系統(tǒng)設(shè)計(jì)功能模塊網(wǎng)上圖書(shū)超市的前臺(tái)功能結(jié)構(gòu)如圖1所示圖書(shū)超市前臺(tái)圖書(shū)展臺(tái)收銀臺(tái)會(huì)員管理購(gòu)物車(chē)網(wǎng)上調(diào)查重點(diǎn)推薦新書(shū)上架訂單查詢(xún)銷(xiāo)售排行圖書(shū)分類(lèi)瀏覽網(wǎng)上調(diào)查查看調(diào)查結(jié)果添加至購(gòu)物車(chē)清空購(gòu)物車(chē)移出圖書(shū)查看購(gòu)物車(chē)填寫(xiě)訂單信息購(gòu)書(shū)結(jié)帳會(huì)員注冊(cè)會(huì)員資料修改會(huì)員登錄訂單查詢(xún)圖1前臺(tái)功能結(jié)構(gòu)圖網(wǎng)上圖書(shū)超市的后臺(tái)功能結(jié)構(gòu)如圖2所示 圖書(shū)超市后臺(tái)圖書(shū)管理用戶(hù)管理訂單管理公告管理投票管理退出查看圖書(shū)信息添加圖書(shū)信息修改圖書(shū)信息刪除圖書(shū)信息查看用戶(hù)信息凍結(jié)/解凍查看訂單信息執(zhí)行訂單查看公告信息添加

32、公告信息刪除公告信息瀏覽投票工程添加投票工程刪除投票工程退出后臺(tái)管理圖2 后臺(tái)功能結(jié)構(gòu)圖系統(tǒng)設(shè)計(jì)思想本系統(tǒng)采用三層架構(gòu)設(shè)計(jì),它的工作原理如圖3所示。圖3三層架構(gòu)拓?fù)鋱D采用三層構(gòu)架以后,用戶(hù)界面層通過(guò)統(tǒng)一的接口向業(yè)務(wù)層發(fā)送請(qǐng)求,業(yè)務(wù)層按自己的邏輯規(guī)那么將請(qǐng)求處理之后進(jìn)行數(shù)據(jù)庫(kù)操作,然后將數(shù)據(jù)庫(kù)返回的數(shù)據(jù)封裝成類(lèi)的形式返回給用戶(hù)界面層。這樣用戶(hù)界面層甚至可以不知道數(shù)據(jù)庫(kù)的結(jié)構(gòu),它只要維護(hù)與業(yè)務(wù)層之間的接口即可。系統(tǒng)總體流程圖4 用戶(hù)流程圖由于后臺(tái)管理流程圖與用戶(hù)流程圖根本相同,因此只例出如圖4用戶(hù)流程圖網(wǎng)站架設(shè)4.4.1開(kāi)發(fā)環(huán)境硬件平臺(tái):CPU:P41.8GHz;內(nèi)存:256MB以上。軟件平臺(tái):操

33、作系統(tǒng):Windows 2000 Server;數(shù)據(jù)庫(kù):SQL Server 2000;開(kāi)發(fā)工具包:JDK Version1.5JSP效勞器:Tomcat 5.5瀏覽器:IE5.0及以上版本,推薦使用IE6.0;分辨率:最正確效果1024768。JDBC驅(qū)動(dòng): JDBCODBC Driver4.4.2建立站點(diǎn)在Tomcat 5.5webapps文件夾下以網(wǎng)上圖書(shū)超市系統(tǒng)的名稱(chēng)BookSupermarket建立文件夾,然后在BookSupermarket下建立WEB-INF注意全部是大寫(xiě)文件夾,最后在WEB-INF下建立classes文件夾,lib文件夾及web.xml保存類(lèi)文件,需要的包保存儲(chǔ)

34、信息及站點(diǎn)的信息。數(shù)據(jù)庫(kù)設(shè)計(jì)本系統(tǒng)數(shù)據(jù)庫(kù)采用SQL Server 2000數(shù)據(jù)庫(kù),系統(tǒng)數(shù)據(jù)庫(kù)名稱(chēng)為db_bookmanage,共包含8張表,根據(jù)工程的需求建立相應(yīng)的數(shù)據(jù)表的設(shè)計(jì)結(jié)果如下面所示:表1圖書(shū)信息表tb_bookinfo字段名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空說(shuō)明ISBNvarchar15圖書(shū)ISBN號(hào),主鍵BookNamevarchar200圖書(shū)名Typevarchar50圖書(shū)類(lèi)別名稱(chēng)publishervarchar100出版社名稱(chēng)Writervarchar100作者Introducetext16yes圖書(shū)簡(jiǎn)介Pricemoney8價(jià)格pDatevarchar50yes出版日期covervarcha

35、r100yes圖書(shū)的封面文件名稱(chēng)INTimedatetime8圖書(shū)信息錄入時(shí)間newbookint4標(biāo)志是否為新書(shū)commendint4yes標(biāo)志是否推薦該圖書(shū),1為推薦,默認(rèn)值為0表不推薦表2用戶(hù)信息表tb_Member字段名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空說(shuō)明IDint4主鍵自動(dòng)編號(hào),用戶(hù)ID號(hào)usernamevarchar4no用戶(hù)名TrueNamevarchar20no用戶(hù)的真實(shí)姓名PassWordvarchar20用戶(hù)密碼cityvarchar20所在城市addressvarchar100 Postcodevarchar6郵政編碼CardNOvarchar24yes證件號(hào)碼CardTypevarc

36、har20yes證件類(lèi)型gradeint4yes用戶(hù)等級(jí)Amount money8yes消費(fèi)金額Telvarchar20yes聯(lián)系 Emailvarchar100Email地址freezeint4yes是否被凍結(jié),為1表示被凍結(jié),為0表示未被凍結(jié)表3訂單信息主表tb_Order字段名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空說(shuō)明Order IDbigint8自動(dòng)編號(hào),訂單編號(hào)bnumbersmallint2品種數(shù)usernamevarchar15用戶(hù)名Truenamevarchar15用戶(hù)真實(shí)姓名addressvarchar100 postcodevarchar10郵政編碼telvarchar20聯(lián)系 emailva

37、rchar100E-mail地址payvarchar20付款方式carryvarchar20運(yùn)送方式rebatefloat8折扣OrderDatesmalldatetin4訂單日期bzvarchar200yes備注信息enforceint4yes標(biāo)志是否被執(zhí)行,值1表示已被執(zhí)行,為0表示未被執(zhí)行表4訂單信息明細(xì)表tb_order_detail字段名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空說(shuō)明IDbigint8訂單信息明細(xì)的自動(dòng)編號(hào)orderIDbigint8訂單號(hào)ISBNvarchar20圖書(shū)ISBN號(hào)pricemoney8單價(jià)numerint4購(gòu)置數(shù)量表5折扣信息表tb_rebate字段名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空說(shuō)明g

38、radevarchar20自動(dòng)編號(hào),等級(jí)Amountmoney8消費(fèi)金額rebatefloat8打折比率表6管理員信息表tb_manager字段名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空說(shuō)明IDint4自動(dòng)編號(hào)managervarchar30管理員名稱(chēng)PWDvarchar30 密碼表7公告信息表tb_BBS字段名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空說(shuō)明IDint4自動(dòng)編號(hào)contentvarchar4000公告內(nèi)容INTimedatetime8 yes公告的內(nèi)容,默認(rèn)值為getdate()表8投票信息表tb_Poll字段名數(shù)據(jù)類(lèi)型長(zhǎng)度允許空說(shuō)明IDint4自動(dòng)編號(hào)optionNamevarchar50投票工程pollint4票數(shù),默

39、認(rèn)為0系統(tǒng)實(shí)現(xiàn)編寫(xiě)JavaBean根據(jù)系統(tǒng)的需求編寫(xiě)需要的JavaBean。下面將給出網(wǎng)上圖書(shū)超市需要的JavaBean的編寫(xiě)過(guò)程。5.1.1數(shù)據(jù)庫(kù)操作的JavaBean的實(shí)現(xiàn)在系統(tǒng)開(kāi)發(fā)過(guò)程中經(jīng)常需要對(duì)數(shù)據(jù)庫(kù)操作,這就需要連接數(shù)據(jù)庫(kù)和操作數(shù)據(jù)庫(kù)包括數(shù)據(jù)的插入,更新,刪除和查詢(xún)等,數(shù)據(jù)庫(kù)操作的JavaBean是一個(gè)公共類(lèi),通常包括連接數(shù)據(jù)庫(kù)的方法getConnection、執(zhí)行查詢(xún)語(yǔ)句的方法executeQuery、執(zhí)行更新操作的方法executeUpdate、關(guān)閉數(shù)據(jù)庫(kù)連接的方法close。因此程序開(kāi)發(fā)就可以將連接數(shù)據(jù)庫(kù)和操作數(shù)據(jù)庫(kù)的代碼寫(xiě)成了一個(gè)JavaBean “connDB.java,編

40、寫(xiě)完成后將其源代碼放到Tomcat 5.5webappsBookSupermarketWEB-INFsrcbeans文件夾中。1指定JavaBean“connDB保存的包,并導(dǎo)入所需的類(lèi)包,并將其保存到“beans包中。2在構(gòu)造方法connDB中定義該類(lèi)中所需的變量。通常將方法中常用的變量均放在構(gòu)造方法中。3創(chuàng)立執(zhí)行查詢(xún)語(yǔ)句的方法executeQuery,返回值為ResultSet結(jié)果集。4創(chuàng)立執(zhí)行更新操作的方法executeUpdate,返回值為int型的整數(shù),代表更新的行數(shù)。5創(chuàng)立執(zhí)行更新操作,并返回該操作中自動(dòng)編號(hào)字段的自動(dòng)編號(hào)的方法executeUpdate_id。6創(chuàng)立關(guān)閉數(shù)據(jù)庫(kù)連接

41、的方法close。7編譯connDB.java,用“javac connDB.java,生成connDB.class,將其放到Tomcat 5.5webappsBookSupermarketWEB-INFclassesbeans文件夾中。5.1.2字符串處理的JavaBean的實(shí)現(xiàn)字符串處理的JavaBean是解決程序中經(jīng)常出現(xiàn)的有關(guān)字符串處理問(wèn)題的方法的類(lèi)。包括將數(shù)據(jù)庫(kù)中及頁(yè)面中有中文問(wèn)題的字符串進(jìn)行正確的顯示和存儲(chǔ)的方法chStr和將字符串中的回車(chē)換行、空格及HTML標(biāo)記符正確顯示的方法convertStr兩個(gè)方法。下面是編寫(xiě)網(wǎng)上圖書(shū)超市的字符串處理的JavaBean“chStr的詳細(xì)過(guò)程

42、。1編寫(xiě)解決輸出中文亂碼問(wèn)題的方法chStr。2接著編寫(xiě)顯示文本中的回車(chē)換行、空格及保證HTML標(biāo)記的正常輸出的方法convertStr。5.1.3保存購(gòu)物信息的JavaBean的實(shí)現(xiàn)在購(gòu)物車(chē)程序中需要使用一個(gè)bookelement對(duì)象保存所選圖書(shū)信息,生成該對(duì)象的JavaBean “bookelenent.java程序代碼。網(wǎng)站前臺(tái)主要功能模塊實(shí)現(xiàn)5.2.1網(wǎng)站前臺(tái)首頁(yè)設(shè)計(jì)根據(jù)前期的分析及客戶(hù)的要求,網(wǎng)上圖書(shū)超市的前臺(tái)主要包括重點(diǎn)推薦展臺(tái),新書(shū)上架,圖書(shū)分類(lèi),圖書(shū)查詢(xún),用戶(hù)管理,購(gòu)物車(chē),訂單生成,訂單查詢(xún)和銷(xiāo)售排行等模塊。在網(wǎng)上超市前臺(tái)首頁(yè)的運(yùn)行結(jié)果如下列圖5所示圖5首頁(yè)5.2.2重點(diǎn)推薦展

43、臺(tái)的實(shí)現(xiàn)過(guò)程1在網(wǎng)站前臺(tái)的居中位置,分欄列出了超市推薦的圖書(shū)信息,主要包括圖書(shū)封面,名稱(chēng),出版社,作者及定價(jià)等信息。同時(shí)列置了“添加至購(gòu)物車(chē)按鈕和“查看按鈕,分別用于將圖書(shū)添加至購(gòu)物車(chē)和查看圖書(shū)的詳細(xì)信息。重點(diǎn)推薦圖書(shū)信息同圖書(shū)根本信息同時(shí)保存在圖書(shū)信息表tb_bookinfo中,以字段commend標(biāo)識(shí),當(dāng)commend字段的值為1時(shí),代表該圖書(shū)為重點(diǎn)推薦圖書(shū)。查詢(xún)重點(diǎn)推薦圖書(shū)的代碼如下:這里需要注意的是,“添加購(gòu)物車(chē)按鈕只有在用戶(hù)登錄后才可以顯示,即是只有登錄的用戶(hù)才可以購(gòu)置圖書(shū)。2根據(jù)圖書(shū)的ISBN號(hào)查詢(xún)圖書(shū)的詳細(xì)信息,圖書(shū)詳細(xì)頁(yè)面的運(yùn)行結(jié)果如圖6所示:圖6圖書(shū)簡(jiǎn)介在book_detai

44、l.jsp頁(yè)面中首先查詢(xún)符合ISBN值的圖書(shū)信息,關(guān)鍵代碼如下:將查詢(xún)結(jié)果顯示到頁(yè)面中,此時(shí)需要對(duì)“圖書(shū)簡(jiǎn)介進(jìn)行處理,以便正確顯示回車(chē)換行和空格符。關(guān)鍵代碼如下: /此處省略了顯示圖書(shū)信息的HTML代碼 5.2.3新書(shū)上架實(shí)現(xiàn)過(guò)程在前臺(tái)首頁(yè)中,單擊“新書(shū)上架超鏈接可以進(jìn)入到新書(shū)上架頁(yè)面newbook.jsp,運(yùn)行結(jié)果如圖7圖7新書(shū)上架上架新書(shū)消息保存在圖書(shū)信息表tb_bookinfo中,以字段newbook標(biāo)志,當(dāng)newbook字段的值為1時(shí),代表該圖書(shū)為上架新書(shū)。上架新書(shū)頁(yè)面關(guān)鍵代碼:5.2.4圖書(shū)分類(lèi)實(shí)現(xiàn)過(guò)程為了方便用戶(hù)查詢(xún)所需圖書(shū)信息,在網(wǎng)站中設(shè)置了圖書(shū)分類(lèi)顯示模塊。單擊導(dǎo)航條中的“圖書(shū)

45、分類(lèi)超鏈接即可進(jìn)入圖書(shū)分類(lèi)顯示頁(yè)面,在該頁(yè)面左的“圖書(shū)分類(lèi)列表中列出數(shù)據(jù)庫(kù)中的全部圖書(shū)類(lèi)別,用戶(hù)單擊即可在右顯示該圖書(shū)信息列表,單擊書(shū)名可以查看相應(yīng)圖書(shū)的詳細(xì)信息,如果用戶(hù)已經(jīng)登錄,還可以直接將圖書(shū)信息添加到購(gòu)物車(chē)中,圖書(shū)分類(lèi)顯示頁(yè)面的運(yùn)行結(jié)果如圖8圖8圖書(shū)分類(lèi)在圖書(shū)分類(lèi)頁(yè)面BookSort.jsp左的“圖書(shū)分類(lèi)列表中列出了數(shù)據(jù)庫(kù)中的全部圖書(shū)類(lèi)別,查詢(xún)圖書(shū)類(lèi)別主要通過(guò)Select語(yǔ)句的Group By字句實(shí)現(xiàn),具體過(guò)程:顯示圖書(shū)分類(lèi)信息時(shí),需要注意的是,不能再使用while語(yǔ)句,而應(yīng)該使用dowhile語(yǔ)句,否那么少一條記錄,這是因?yàn)樵谥付▓D書(shū)默認(rèn)類(lèi)別時(shí),已經(jīng)應(yīng)用rs_Type.next()語(yǔ)

46、句將記錄指針移動(dòng)到下一條記錄了,顯示圖書(shū)分類(lèi)信息的關(guān)鍵代碼: /此處省略填寫(xiě)訂單信息代碼在圖書(shū)分類(lèi)頁(yè)面BookSort.jsp的右側(cè)的圖書(shū)列表中將顯示指定類(lèi)別的圖書(shū)信息。當(dāng)用戶(hù)沒(méi)有選擇類(lèi)別,可以通過(guò)獲取類(lèi)別結(jié)果集rs_Type中的第一條記錄的值指定默認(rèn)類(lèi)別,否那么應(yīng)用request對(duì)象的getParameter方法來(lái)獲取選擇的類(lèi)別并查詢(xún),局部代碼:String PType=;if (request.getParameter(Type)!=null)PType=chStr.chStr(request.getParameter(Type);elseif(rs_Type.next()PType=rs

47、_Type.getString(Type);elseresponse.sendRedirect(index.jsp);ResultSet rs_book=connDB.executeQuery(select * from tb_bookinfo where Type=+PType+);%5.2.5用戶(hù)管理實(shí)現(xiàn)過(guò)程用戶(hù)管理主要包括用戶(hù)注冊(cè),用戶(hù)登錄,用戶(hù)個(gè)人資料修改,由于用戶(hù)個(gè)人資料修改比擬簡(jiǎn)單,不多做說(shuō)明。用戶(hù)注冊(cè)為了統(tǒng)一管理,系統(tǒng)規(guī)定只有會(huì)員才能購(gòu)置圖書(shū),所以要購(gòu)置圖書(shū)的新用戶(hù)必須先進(jìn)行用戶(hù)注冊(cè)。用戶(hù)注冊(cè)的入口位置在網(wǎng)站首頁(yè)的左側(cè)。用戶(hù)點(diǎn)擊“注冊(cè)即可進(jìn)入用戶(hù)注冊(cè)頁(yè)面,如圖9圖9用戶(hù)注冊(cè)網(wǎng)站要

48、求用戶(hù)名必須唯一,用戶(hù)可以先看自己的用戶(hù)名是否被注冊(cè)。由于是網(wǎng)絡(luò)程序,所以注冊(cè)后在保存用戶(hù)信息時(shí)候,還需要再次對(duì)注冊(cè)用戶(hù)進(jìn)行檢測(cè)。如果不存在,那么保存該用戶(hù)信息。否那么提示該名用戶(hù)已經(jīng)被注冊(cè),請(qǐng)重新注冊(cè)。保存用戶(hù)注冊(cè)信息頁(yè)面register_deal.jsp。用戶(hù)登錄用戶(hù)登錄窗口如圖10圖10用戶(hù)登錄如果用戶(hù)輸入的用戶(hù)名存在,并且凍結(jié)字段的值不為1,那么判斷用戶(hù)輸入的密碼是否正確,如果密碼也正確,那么成功登錄,否那么提示登錄失敗。5.2.6購(gòu)物車(chē)實(shí)現(xiàn)過(guò)程購(gòu)物車(chē)主要包括所選圖書(shū)的添加,查看購(gòu)物車(chē),單件圖書(shū)購(gòu)置數(shù)量的修改,清空購(gòu)物車(chē)4局部。添加到購(gòu)物車(chē)cart_Add.jsp主要采用Vector類(lèi)

49、型的變量cart來(lái)存儲(chǔ)購(gòu)物數(shù)據(jù)的,被保存在Session中,然后將圖書(shū)信息保存到cart中,主要代碼:String ISBN=chStr.chStr(request.getParameter(ISBN);String sql=select * from tb_bookinfo where ISBN=+ISBN+;ResultSet rs=connDB.executeQuery(sql);float price=0;if(rs.next()price=rs.getInt(price);bookelement mybookelement=new bookelement();mybookelemen

50、t.ISBN=ISBN;mybookelement.price=price;mybookelement.number=1;boolean Flag=true;Vector cart=(Vector)session.getAttribute(cart);if(cart=null)cart=new Vector();elsefor(int i=0;i查看購(gòu)物車(chē)查看購(gòu)物車(chē)頁(yè)面cart_see.jsp的頂部首先需要判斷購(gòu)物車(chē)是否為空,如果為空將頁(yè)面直接跳轉(zhuǎn)到購(gòu)物車(chē)為空頁(yè)面cart_null.jsp,否那么顯示購(gòu)物車(chē)信息。顯示購(gòu)物車(chē)信息主要是將保存在Session中的數(shù)據(jù)利用for語(yǔ)句輸出到IE中,同時(shí)

51、根據(jù)圖書(shū)的定價(jià),購(gòu)置數(shù)量自動(dòng)計(jì)算每種圖書(shū)的金額和購(gòu)物車(chē)中的全部圖書(shū)的合計(jì)金額。代碼如下:Vector cart=(Vector)session.getAttribute(cart);if(cart=null | cart.size()=0)response.sendRedirect(cart_null.jsp);else/此處插入顯示購(gòu)物車(chē)信息的代碼,將在下面給出% /此處省略填寫(xiě)訂單信息代碼%float sum=0;float pric=0;String ISBN=;String bookname=;String publisher=;for(int i=0;i /此處省略填寫(xiě)訂單信息代碼

52、!-function check()if(isNaN(form1.num.value)alert(請(qǐng)不要輸入非法字符);return false;history.back();if(form1.num.value=)alert(請(qǐng)輸入修改的數(shù)量);return false;history.back();-圖11 購(gòu)物車(chē)如圖11由于在購(gòu)物車(chē)中并沒(méi)有保存圖書(shū)的名稱(chēng),所以在獲取圖書(shū)信息時(shí),還需根據(jù)圖書(shū)的ISBN號(hào)重新到數(shù)據(jù)表中查圖書(shū)名稱(chēng),代碼如下: ResultSet rs_newbook=connDB.executeQuery(select * from tb_bookinfo where ISB

53、N=“+ ISBN+);If(re_book.next()Bookname=re_book.getString(“Bookname);從購(gòu)物車(chē)中移去指定圖書(shū)實(shí)現(xiàn)從購(gòu)物車(chē)中移去指定圖書(shū)可以通過(guò)Vector類(lèi)的removeElementAt(int index)方法實(shí)現(xiàn),非常方便。頁(yè)面cart_move.jsp代碼為:Vector cart=(Vector)session.getAttribute(cart);tryString ID=request.getParameter(ID);int id=Integer.parseInt(ID);cart.removeElementAt(id);/移去指

54、定圖書(shū)信息session.setAttribute(cart,cart);response.sendRedirect(cart_see.jsp);catch(Exception e)%清空購(gòu)物車(chē)實(shí)現(xiàn)的方法很簡(jiǎn)單,只需要將保存在Session中的購(gòu)物信息清空即可,清空購(gòu)物車(chē)頁(yè)面cart_clear.jsp代碼為:session.removeAttribute(cart);response.sendRedirect(cart_null.jsp);5.2.7生成訂單實(shí)現(xiàn)過(guò)程生成訂單時(shí),不但要保存用戶(hù)訂單中所購(gòu)置的圖書(shū)信息和訂單信息,同時(shí)還需要返回一個(gè)可供用戶(hù)隨時(shí)查詢(xún)的唯一訂單號(hào)。用戶(hù)查看購(gòu)物車(chē)頁(yè)面中

55、的“去收銀臺(tái)結(jié)帳超連接即可進(jìn)入到收銀臺(tái)頁(yè)面填寫(xiě)訂單信息,在該頁(yè)面中系統(tǒng)會(huì)根據(jù)用戶(hù)登錄的用戶(hù)名自動(dòng)填寫(xiě)用戶(hù)根本信息,除用戶(hù)名不可更改外,其他的均可修改,收銀臺(tái)頁(yè)面的運(yùn)行結(jié)果如圖12圖12收銀臺(tái)在收銀臺(tái)頁(yè)面cart_checkout.jsp中,首先應(yīng)用判斷用戶(hù)是否已經(jīng)購(gòu)物,然后再判斷用戶(hù)是否登錄,如果用戶(hù)沒(méi)有購(gòu)物或是沒(méi)有登錄都將給予提示并返回到網(wǎng)站首頁(yè)。關(guān)鍵代碼為:%if(session.getAttribute(cart)=)out.println(alert(您還沒(méi)有購(gòu)物!);window.location.href=index.jsp;);String Username=;Username=

56、(String)session.getAttribute(UserName);if (Username!=)tryResultSet rs_user=connDB.executeQuery(select * from tb_Member where username=+Username+);if(!rs_user.next()session.invalidate();out.println(alert(請(qǐng)先登錄后,再進(jìn)行購(gòu)物!);window.location.href=index.jsp;);return;elseString Truename=rs_user.getString(Truen

57、ame);String address=rs_user.getString(address);String postcode=rs_user.getString(postcode);String tel=rs_user.getString(tel);String email=rs_user.getString(email);%5.2.8訂單查詢(xún)實(shí)現(xiàn)過(guò)程訂單查詢(xún)實(shí)現(xiàn)頁(yè)面是為用戶(hù)查詢(xún)訂單信息執(zhí)行狀態(tài)而設(shè)計(jì)的,用戶(hù)成功登錄后,單擊網(wǎng)站中的“訂單查詢(xún),即可進(jìn)入到訂單查詢(xún)頁(yè)面,該頁(yè)面列出當(dāng)前用戶(hù)的全部訂單概要信息列表。查詢(xún)訂單概要信息主要從訂單主表tb_order中根據(jù)當(dāng)前登錄的用戶(hù)名獲取訂單信息,關(guān)鍵

58、代碼如下:ResultSet rs=connDB.executeQuery(select * from tb_Order where username=+(String)session.getAttribute(UserName)+);并根據(jù)訂單編號(hào)查看訂單的詳細(xì)信息。5.2.9銷(xiāo)售排行實(shí)現(xiàn)過(guò)程該頁(yè)面運(yùn)行結(jié)果如圖13所示圖13銷(xiāo)售排行銷(xiāo)售排行數(shù)據(jù)主要是將銷(xiāo)售明細(xì)表中的數(shù)量ISBN字段分組并統(tǒng)計(jì)銷(xiāo)售數(shù)量再應(yīng)用子查詢(xún)獲取銷(xiāo)售數(shù)量最高的前10本圖書(shū),最后再使用連接查詢(xún)獲取相應(yīng)的圖書(shū)信息,關(guān)鍵代碼如下:ResultSet rs_sort=connDB.executeQuery(select * fro

59、m (select top 10 * from ( select sum(number) as amount,ISBN from tb_Order_detail group by ISBN )as tab order by amount desc) o inner join tb_bookinfo b on o.ISBN=b.ISBN order by o.amount desc);網(wǎng)站后臺(tái)主要功能模塊設(shè)計(jì)在后臺(tái)設(shè)計(jì)中主要有7個(gè)模塊,分別是:后臺(tái)登錄,圖書(shū)管理,用戶(hù)管理,訂單管理。公告管理,投票管理,退出。5.3.1后臺(tái)登錄實(shí)現(xiàn)過(guò)程后臺(tái)登錄頁(yè)面運(yùn)行結(jié)果如圖14圖14后臺(tái)登錄為了網(wǎng)站的平安,防止

60、一些不法分子蓄意破壞,需要為網(wǎng)站后臺(tái)設(shè)計(jì)用于驗(yàn)證用戶(hù)身份的文件safe.jsp,完整代碼如下:%if (session.getAttribute(UserName)=null)out.println(alert(您還沒(méi)有登錄!);window.location.href=index.jsp;);%然后,在網(wǎng)站首頁(yè)后的每個(gè)頁(yè)面都參加以下代碼:這樣當(dāng)用戶(hù)沒(méi)有正常登錄時(shí),即可彈出“您還沒(méi)有登錄的提示對(duì)話(huà)框,確定后將退出后臺(tái)頁(yè)面,返回網(wǎng)站首頁(yè)。5.3.2圖書(shū)管理頁(yè)面實(shí)現(xiàn)過(guò)程圖書(shū)管理模塊主要實(shí)現(xiàn)對(duì)圖書(shū)信息的管理,包括分頁(yè)顯示圖書(shū)信息,添加圖書(shū)信息,修改圖書(shū)信息,刪除圖書(shū)信息等功能。分頁(yè)顯示圖書(shū)信息分頁(yè)顯

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論