網(wǎng)上書(shū)店在線購(gòu)物系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)論文_第1頁(yè)
網(wǎng)上書(shū)店在線購(gòu)物系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)論文_第2頁(yè)
網(wǎng)上書(shū)店在線購(gòu)物系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)論文_第3頁(yè)
網(wǎng)上書(shū)店在線購(gòu)物系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)論文_第4頁(yè)
網(wǎng)上書(shū)店在線購(gòu)物系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)論文_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、畢畢 業(yè)業(yè) 設(shè)設(shè) 計(jì)計(jì)( 論論 文文)網(wǎng)上書(shū)店網(wǎng)上書(shū)店在線購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)在線購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)論文作者姓名:論文作者姓名:申請(qǐng)學(xué)位專(zhuān)業(yè):申請(qǐng)學(xué)位專(zhuān)業(yè):申請(qǐng)學(xué)位類(lèi)別:申請(qǐng)學(xué)位類(lèi)別:指指導(dǎo)導(dǎo)教教師師姓姓名名(職職稱稱):論文提交日期:論文提交日期:網(wǎng)上書(shū)店網(wǎng)上書(shū)店在線購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)在線購(gòu)物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘摘 要要隨著計(jì)算機(jī)技術(shù)的蓬勃發(fā)展,電子商務(wù)發(fā)展也越來(lái)越快,網(wǎng)上書(shū)店便是隨著這些網(wǎng)絡(luò)技術(shù)的發(fā)展而出現(xiàn)的一種新型圖書(shū)銷(xiāo)售渠道。本系統(tǒng)是為適應(yīng)電子商務(wù)網(wǎng)絡(luò)交易平臺(tái)技術(shù)的發(fā)展,而開(kāi)發(fā)的一個(gè)多功能網(wǎng)上書(shū)店系統(tǒng)。本系統(tǒng)采用 b/s 模式,以 mysql 作為后臺(tái)數(shù)據(jù)庫(kù),tomcat 作為 we

2、b 服務(wù)器,采用 eclipse+myeclipse 作為開(kāi)發(fā)環(huán)境,使用 jsp+servlet+javabean 技術(shù)開(kāi)發(fā)完成的。實(shí)現(xiàn)了購(gòu)物車(chē)、排行榜、訂單處理、會(huì)員公告和積分事件等功能。其中購(gòu)物車(chē)功能和后臺(tái)充值功能能夠?qū)崿F(xiàn)簡(jiǎn)單的網(wǎng)上交易,達(dá)到在線購(gòu)物的要求;排行榜功能對(duì)系統(tǒng)的書(shū)本進(jìn)行了詳細(xì)的統(tǒng)計(jì),能夠得出書(shū)本在網(wǎng)站中的熱門(mén)程度,完成了統(tǒng)計(jì)分析的功能;還有訂單處理功能,它通過(guò)搜索條,報(bào)表導(dǎo)出和打印功能實(shí)現(xiàn)了管理員和用戶對(duì)訂單的直觀查詢,讓系統(tǒng)更具有人性化。關(guān)鍵詞關(guān)鍵詞:電子商務(wù); 在線購(gòu)物; 網(wǎng)上書(shū)店; 統(tǒng)計(jì)分析online bookstoredesign and implementatio

3、n of online shopping and statistical analysisabstractwith the fast development of computer technology and electronic commerce, online bookshop become a new type of book sales channel. this system which is implemented to fit the development of electronic commerce network trading is a multiple functio

4、nal online bookshop.this system adopts b/s model and takes mysql as the background database. tomcat is used as web server. by using eclipse plus myeclipse as development environment and jsp , servlet and javabean as development language, functions of shopping car, rank, order proposal, vip person bu

5、lletin and integral things is developed. among the functions, shopping car and background filling money can implement simple online trade and achieve the requirement of online shopping. the function of rank makes a detailed statistic of books in this system which makes us know popular degree of book

6、s on the website. order proposal is developed to export and print reports which made this system more humanized.key words: electronic commerce; online shopping; online bookshop; statistical analysis目目 錄錄論文總頁(yè)數(shù):22 頁(yè)1引言.11.1網(wǎng)上書(shū)店的背景.11.2課題研發(fā)的目的與意義.12系統(tǒng)概述.22.1軟硬件工作環(huán)境.22.1.1硬件環(huán)境要求.22.1.2軟件環(huán)境要求.22.2系統(tǒng)技術(shù)簡(jiǎn)介.

7、22.2.1java 技術(shù)簡(jiǎn)介 .22.2.2jsp 簡(jiǎn)介 .22.2.3struts 體系結(jié)構(gòu)簡(jiǎn)介 .32.2.4eclipse+myeclipse 簡(jiǎn)介 .32.2.5mysql 簡(jiǎn)介 .43網(wǎng)站總體設(shè)計(jì).43.1系統(tǒng)整體簡(jiǎn)介.43.2在線購(gòu)物及統(tǒng)計(jì)分析模塊功能設(shè)計(jì).53.2.1在線購(gòu)物模塊.53.2.2統(tǒng)計(jì)分析模塊.83.2.3訂單處理模塊.113.2.4會(huì)員公告模塊.133.3數(shù)據(jù)庫(kù)設(shè)計(jì)分析.143.3.1用戶信息表.143.3.2圖書(shū)信息表.153.3.3消費(fèi)訂單信息表.153.3.4管理員信息表.164主要功能測(cè)試.164.1購(gòu)物車(chē)功能測(cè)試.164.2排行榜功能測(cè)試.184.2.1

8、總銷(xiāo)售排行榜功能測(cè)試.184.2.2總點(diǎn)擊榜功能測(cè)試.194.3系統(tǒng)測(cè)試總結(jié).20結(jié) 論.20參考文獻(xiàn).20致 謝.21聲 明.22第 1 頁(yè) 共 22 頁(yè)1 1引言引言該部分主要是對(duì)本系統(tǒng)的背景,開(kāi)發(fā)目的以及開(kāi)發(fā)意義進(jìn)行闡述。1.11.1網(wǎng)上書(shū)店的背景網(wǎng)上書(shū)店的背景在當(dāng)前計(jì)算機(jī)發(fā)展迅速的時(shí)代,電子商務(wù)成為互聯(lián)網(wǎng)發(fā)展日臻成熟的直接結(jié)果,是網(wǎng)絡(luò)技術(shù)應(yīng)用新的發(fā)展方向?;ヂ?lián)網(wǎng)自身所具有的開(kāi)放性、全球性、低成本、高效率的特點(diǎn),已成為電子商務(wù)的內(nèi)在特征,并使得電子商務(wù)大大超越了作為一種新的貿(mào)易形式所具有的價(jià)值。就網(wǎng)上書(shū)店系統(tǒng)而言,由于網(wǎng)絡(luò)已經(jīng)覆蓋全球,其信息量大而獨(dú)具優(yōu)勢(shì)。它通過(guò)人與電子通信方式的結(jié)合,

9、依靠計(jì)算機(jī)網(wǎng)絡(luò),以通訊技術(shù)為基礎(chǔ),實(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í)的全天候和全方位服務(wù)是店面書(shū)店所不能比及的;成本低廉更是開(kāi)設(shè)網(wǎng)上書(shū)店的主要原因。而與其他商品相比,不具時(shí)效性;同時(shí)書(shū)本具有易于判斷和選擇而獨(dú)具優(yōu)勢(shì),最適合于網(wǎng)上交易;再次是單價(jià)低,降低了消費(fèi)者第一次在網(wǎng)絡(luò)購(gòu)物的門(mén)檻,對(duì)于讀者來(lái)說(shuō),網(wǎng)上書(shū)店近在咫尺,并且永遠(yuǎn)不下班關(guān)門(mén),讀者可以隨時(shí)隨地地自由地查詢和訂購(gòu)圖書(shū),同時(shí)還減少了書(shū)店過(guò)程中的支出,具有實(shí)際意義。因此網(wǎng)上書(shū)店必將有長(zhǎng)足的發(fā)展。開(kāi)辦網(wǎng)上書(shū)店系統(tǒng)也可以為在校大學(xué)生提供方便,廉價(jià),高效的書(shū)店方式,促進(jìn)文化傳播

10、,幫助國(guó)家和學(xué)校培養(yǎng)優(yōu)秀的人才,具有長(zhǎng)遠(yuǎn)的經(jīng)濟(jì)效益和社會(huì)效益。1.21.2課題研發(fā)的目的與意義課題研發(fā)的目的與意義隨著我國(guó) internet 的發(fā)展,電子商務(wù)越來(lái)越多的溶入到我們的日常生活,而且網(wǎng)上書(shū)店也是電子商務(wù)網(wǎng)站的代表,國(guó)內(nèi)網(wǎng)上書(shū)店有像“當(dāng)當(dāng)網(wǎng)”等這種優(yōu)秀的電子商務(wù)網(wǎng)站,它們是其他網(wǎng)站良好的典范,可以學(xué)習(xí)參考他們的思想,了解和熟悉整個(gè)網(wǎng)站的開(kāi)發(fā)流程及完整的電子商務(wù)網(wǎng)站設(shè)計(jì)中站應(yīng)有的功能和注意事項(xiàng),由此選擇了網(wǎng)上書(shū)店作為此次畢業(yè)設(shè)計(jì)的題目。在選擇編輯語(yǔ)言時(shí),因?yàn)?java 程序語(yǔ)言及編程技術(shù)是隨著互聯(lián)網(wǎng)的發(fā)展而被推廣應(yīng)用的,它是目前國(guó)內(nèi)外廣泛使用的程序設(shè)計(jì)語(yǔ)言。它的內(nèi)容和特點(diǎn)與以往的其他程

11、序設(shè)計(jì)語(yǔ)言有很大的不同。面向?qū)ο蠹夹g(shù)被認(rèn)為是程序設(shè)計(jì)一方法學(xué)的一場(chǎng)革命,它已經(jīng)逐步代替面向過(guò)程的程序設(shè)計(jì)技術(shù),從而成為計(jì)算機(jī)應(yīng)用開(kāi)發(fā)領(lǐng)域的主流趨勢(shì),所以 java 成為本設(shè)計(jì)的開(kāi)發(fā)語(yǔ)言,用來(lái)設(shè)計(jì)和完成本網(wǎng)上書(shū)店系統(tǒng)。本畢業(yè)設(shè)計(jì)所完成的網(wǎng)上書(shū)店系統(tǒng),除了大量收集有關(guān)資料,還將會(huì)牽涉到許多技術(shù)上的問(wèn)題,如:網(wǎng)頁(yè)制作技術(shù),后臺(tái)數(shù)據(jù)庫(kù)的設(shè)計(jì)和管理,通過(guò)實(shí)際的制作個(gè)網(wǎng)站,可以在實(shí)踐中掌握上述技術(shù)的使用,達(dá)到學(xué)以自用的目的。第 2 頁(yè) 共 22 頁(yè)2 2系統(tǒng)概述系統(tǒng)概述本部分列出了系統(tǒng)軟硬件工作的環(huán)境與要求,并對(duì)系統(tǒng)所涉及到的一些技術(shù)進(jìn)行了介紹。2.12.1軟硬件工作環(huán)境軟硬件工作環(huán)境.1

12、 硬件環(huán)境要求硬件環(huán)境要求計(jì)算機(jī)必須滿足的條件:(1)服務(wù)器端硬件環(huán)境:處理器 p4 2.0g 以上,內(nèi)存 512m 以上,硬盤(pán)40g 以上。(2)客戶端硬件環(huán)境:處理器 p4 1.7g 以上,內(nèi)存 128m 以上,硬盤(pán) 20g以上。.2 軟件環(huán)境要求軟件環(huán)境要求(1)服務(wù)器端需要環(huán)境:操作系統(tǒng)為 windows 98/me/2000/xp/2003,jdk1.4 以上,在 eclipse+myeclipse 環(huán)境下,以 tomcat作為服務(wù)器和 mysql 作為后臺(tái)數(shù)據(jù)庫(kù)。(2)客戶端需要環(huán)境:操作系統(tǒng) windows 98/me/2000/xp/2003,ie 5.0 以上

13、便可。2.22.2系統(tǒng)技術(shù)簡(jiǎn)介系統(tǒng)技術(shù)簡(jiǎn)介.1 java 技術(shù)簡(jiǎn)介技術(shù)簡(jiǎn)介隨著面向?qū)ο缶幊趟枷氲牟粩喑墒旌透鞣N技術(shù)問(wèn)題的提出 1995 年 6 月由 sun microsystems 公司提出了一種革命化語(yǔ)言java,與其他編程語(yǔ)一樣,這種語(yǔ)言在短短的時(shí)間內(nèi)得到了迅速的發(fā)展。由于這種語(yǔ)言具有易用性、平臺(tái)無(wú)關(guān)性、易移植性等諸多特征,使得這門(mén)語(yǔ)言得到了廣泛的應(yīng)用。而且,這種語(yǔ)言具有很好的發(fā)展景。程序開(kāi)發(fā)費(fèi)用少,工作效率高,并擁有很好的用戶界面和強(qiáng)大的開(kāi)發(fā)工具。網(wǎng)上數(shù)據(jù)編程體現(xiàn)的非常充分,是其它語(yǔ)言無(wú)法做到的。 .2 jsp 簡(jiǎn)介簡(jiǎn)介jsp(javaserver pa

14、ges)是由 sun microsystems 公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。該技術(shù)為創(chuàng)建顯示動(dòng)態(tài)生成內(nèi)容的 web頁(yè)面提供了一個(gè)簡(jiǎn)捷而快速的方法。jsp 技術(shù)的設(shè)計(jì)目的是使得構(gòu)造基于 web的應(yīng)用程序更加容易和快捷,而這些應(yīng)用程序能夠與各種 web 服務(wù)器,應(yīng)用服務(wù)器,瀏覽器和開(kāi)發(fā)工具共同工作。 jsp 規(guī)范是 web 服務(wù)器、應(yīng)用服務(wù)器、交易系統(tǒng)、以及開(kāi)發(fā)工具供應(yīng)商間廣泛合作的結(jié)果。在傳統(tǒng)的網(wǎng)頁(yè) html 文件中加入 java 程序片段和 jsp 標(biāo)記,就構(gòu)成了 jsp 網(wǎng)頁(yè)。web 服務(wù)器在遇到訪問(wèn) jsp第 3 頁(yè) 共 22 頁(yè)網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中的程序片

15、段,然后將執(zhí)行結(jié)果以 html 格式返回給客戶。程序片段可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)以及發(fā)送 email 等等,這就是建立動(dòng)態(tài)網(wǎng)站所需要的功能。所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,對(duì)客戶瀏覽器的要求最低,可以實(shí)現(xiàn)無(wú) plugin,無(wú)activex,無(wú) java applet,甚至無(wú) frame。.3 struts 體系結(jié)構(gòu)簡(jiǎn)介體系結(jié)構(gòu)簡(jiǎn)介作為一個(gè)實(shí)現(xiàn)良好的 mvc 框架,struts 對(duì) model、view 和 controller 都提供了對(duì)應(yīng)的實(shí)現(xiàn)組件,圖 2-1 所示為 struts 體系結(jié)構(gòu)圖。下面從模型、視圖、控制來(lái)介紹 struts

16、的體系結(jié)構(gòu)。瀏覽器控制器 servlet業(yè)務(wù)邏輯 action配置文件 struts-config.xml視圖 jsp模型 application state調(diào)用取得數(shù)據(jù)請(qǐng)求響應(yīng)圖 2-1 struts 體系結(jié)構(gòu)圖視圖(view)就是一系列提交到客戶瀏覽器進(jìn)行顯示的 jsp 文件,是用戶看到并與之交互的界面。在這些界面中沒(méi)有業(yè)務(wù)邏輯,也沒(méi)有模型信息,只有標(biāo)簽。模型(model)表示應(yīng)用程序的狀態(tài)和業(yè)務(wù)邏輯,通常由 javabean 或 ejb組件來(lái)實(shí)現(xiàn)??刂破鳎╟ontroller)的作用是從客戶端接受請(qǐng)求,并且選擇執(zhí)行相應(yīng)的業(yè)務(wù)邏輯,然后把響應(yīng)結(jié)果送回到客戶端。在 struts 中 cont

17、roller 由actionservlet 類(lèi)和 action 類(lèi)來(lái)實(shí)現(xiàn)。actionservlet 主要負(fù)責(zé)接受 http 請(qǐng)求信息,action 類(lèi)負(fù)責(zé)調(diào)用模型的方法,更新模型的狀態(tài),并幫助控制應(yīng)用程序的流程。.4 eclipse+myeclipse 簡(jiǎn)介簡(jiǎn)介eclipse 是一個(gè)開(kāi)放源代碼,基于 java 的可擴(kuò)張的開(kāi)發(fā)平臺(tái),多數(shù)人都是將 eclipse 作為 java 的集成開(kāi)發(fā)環(huán)境使用。eclipse 的設(shè)計(jì)思想是:一切皆為插件。它自身的核心是非常小的,其它所有的功能都以插件的形式附加到該核心上。第 4 頁(yè) 共 22 頁(yè)eclipse 中三個(gè)最吸引人的地方是它創(chuàng)新性的

18、圖形 api,即 swt/jface,它大大改善了 java 界面不夠美觀,界面響應(yīng)速度比較慢的能力。二是它的插件機(jī)制。三是利用它的插件機(jī)制開(kāi)發(fā)的眾多功能強(qiáng)大的插件,而 myeclipse 就是其中的一種有名的插件集之一,myeclipse 將開(kāi)發(fā)者常用到的一些有用的插件都集合起來(lái)。myeclipse 為 eclipse 提供了一個(gè)大量私有和開(kāi)源的 java 工具的集合,這解決了各種開(kāi)源工具的不一致和缺點(diǎn)。這些工具解析 java 和 xml 配置文件。 .5 mysql 簡(jiǎn)介簡(jiǎn)介mysql 是一個(gè)多用戶、多線程的支持標(biāo)準(zhǔn) sql 語(yǔ)句的關(guān)系型數(shù)據(jù)庫(kù)。它支持大文件及圖像的存儲(chǔ),并

19、且提供一個(gè)豐富和極其有用的功能集。它的特點(diǎn)是速度快, 易用,穩(wěn)定性能好, 所以很適合應(yīng)用在 internet 網(wǎng)絡(luò)上,用它來(lái)存取數(shù)據(jù)。具體地,它是一個(gè)客戶機(jī)/服務(wù)器系統(tǒng),由一個(gè)支持不同后臺(tái)的服務(wù)器守護(hù)程序 mysql, 多個(gè)不同的客戶程序及庫(kù),管理工具,及一個(gè)界面組成。mysql 已得到眾多應(yīng)用的支持。mysql 是數(shù)據(jù)庫(kù)領(lǐng)域的中間派。它缺乏一個(gè)全功能數(shù)據(jù)庫(kù)的大多數(shù)主要特征, 但是又有比類(lèi)似 xbase 記錄存儲(chǔ)引擎更多的特征。它像企業(yè)級(jí) rdbms 那樣需要一個(gè)積極的服務(wù)者守護(hù)程序,但是不能像他們那樣消費(fèi)資源。查詢語(yǔ)言允許復(fù)雜的連接查詢,但是所有的參考完整必須由程序員強(qiáng)制保證。mysql 找

20、到一個(gè)位置提供簡(jiǎn)潔和速度,同時(shí)仍然提供足夠的功能使程序員高興。數(shù)據(jù)庫(kù)程序員將喜歡其查詢功能和廣泛的客戶庫(kù),他們會(huì)覺(jué)得系統(tǒng)缺乏主要數(shù)據(jù)庫(kù)功能,他們會(huì)發(fā)覺(jué)它對(duì)簡(jiǎn)單數(shù)據(jù)庫(kù)(在不能保證購(gòu)買(mǎi)大牌數(shù)據(jù)庫(kù)時(shí))是有價(jià)值的。3 3網(wǎng)站總體設(shè)計(jì)網(wǎng)站總體設(shè)計(jì)本部分是對(duì)本系統(tǒng)代碼設(shè)計(jì)與數(shù)據(jù)庫(kù)設(shè)計(jì)的介紹。3.13.1系統(tǒng)整體簡(jiǎn)介系統(tǒng)整體簡(jiǎn)介本網(wǎng)上書(shū)店系統(tǒng)分為管理模塊和在線購(gòu)物及統(tǒng)計(jì)分析模塊兩大模塊.管理模塊的設(shè)計(jì)和實(shí)現(xiàn)分為注冊(cè)管理,用戶管理,圖書(shū)管理,權(quán)限管理這四個(gè)模塊,其前臺(tái)主要是完成用戶的登錄,注冊(cè)和密碼找回,讓用戶能根據(jù)需要對(duì)個(gè)人信息進(jìn)行修改和查看,并能夠?qū)?shū)本進(jìn)行瀏覽和查詢,以及 vip 用戶提交申請(qǐng)功能。后臺(tái)

21、的功能主要是讓管理員有對(duì)用戶,圖書(shū)和 vip 提交進(jìn)行相關(guān)處理的功能。而在線購(gòu)物及統(tǒng)計(jì)分析模塊分為在線購(gòu)物模塊和統(tǒng)計(jì)分析模塊兩大模塊,其中包括在線購(gòu)物,統(tǒng)計(jì)分析,訂單處理和會(huì)員公告四大部分,其主要功能是完成用戶對(duì)書(shū)籍的購(gòu)買(mǎi),排行榜的建立,積分事件的實(shí)現(xiàn),消費(fèi)訂單的管理以及第 5 頁(yè) 共 22 頁(yè)會(huì)員公告的實(shí)現(xiàn)和修改。在本系統(tǒng)中,本人負(fù)責(zé)的是在線購(gòu)物及統(tǒng)計(jì)分析模塊的設(shè)計(jì)和實(shí)現(xiàn),以下便是該網(wǎng)站完整的功能結(jié)構(gòu)圖,藍(lán)色部分由本人負(fù)責(zé)。3.23.2在線購(gòu)物及統(tǒng)計(jì)分析模塊功能在線購(gòu)物及統(tǒng)計(jì)分析模塊功能設(shè)計(jì)設(shè)計(jì).1 在線購(gòu)物模塊在線購(gòu)物模塊本模塊主要分為購(gòu)物車(chē)和充值管理兩大功能,購(gòu)物車(chē)功能主

22、要是實(shí)現(xiàn)店主和顧客之間交易功能,充值管理功能則實(shí)現(xiàn)了對(duì)用戶金額的充值。該模塊功能圖如圖 3-2 所示。 圖 3-1 系統(tǒng)總體構(gòu)造圖網(wǎng)上書(shū)店管理模塊在線購(gòu)物及統(tǒng)計(jì)分析模塊注冊(cè)管理統(tǒng)計(jì)分析用戶管理圖書(shū)管理權(quán)限管理在線購(gòu)物訂單處理會(huì)員公告在線購(gòu)物充值管理購(gòu)物車(chē)單本刪除刪除已選書(shū)本全部刪除實(shí)現(xiàn)管理員后臺(tái)手動(dòng)充值顯示書(shū)本詳情選擇購(gòu)書(shū)數(shù)量圖 3-2 在線購(gòu)物模塊功能示意圖第 6 頁(yè) 共 22 頁(yè)(1)購(gòu)物車(chē)功能購(gòu)物車(chē)功能說(shuō)明:購(gòu)物車(chē)功能具有選擇購(gòu)買(mǎi)數(shù)量,查看到書(shū)名,價(jià)格(會(huì)員享受 9 折,vip 會(huì)員享受 8 折優(yōu)惠) ,數(shù)量,總金額和用戶余額,還具有能清空全部已選圖書(shū)或者一本圖書(shū)的功能,完成購(gòu)買(mǎi)后,該用

23、戶的賬戶金額也自動(dòng)減去消費(fèi)金額,使所連接數(shù)據(jù)庫(kù)在該用戶的余額中也自動(dòng)減去消費(fèi)金額。以下是購(gòu)物車(chē)界面圖,如圖 3-3 所示。由于購(gòu)物車(chē)是本系統(tǒng)的重要部分,所以下面詳細(xì)介紹一下此功能的實(shí)現(xiàn)和核心代碼。在設(shè)計(jì)購(gòu)物車(chē)功能的時(shí)候,要實(shí)現(xiàn)購(gòu)物車(chē)所必要的幾個(gè)功能有以下幾種,一是選擇購(gòu)書(shū)數(shù)量功能,二是購(gòu)書(shū)提交功能,三是在購(gòu)物車(chē)?yán)锩骘@示圖書(shū)的詳細(xì)情況,包括作者和價(jià)錢(qián)等相關(guān)信息,還有就是考慮到用戶在已經(jīng)將要購(gòu)買(mǎi)的圖書(shū)放入購(gòu)物車(chē)后,當(dāng)該用戶瀏覽網(wǎng)頁(yè)發(fā)現(xiàn)有比此本圖書(shū)或幾本圖書(shū)更有購(gòu)買(mǎi)價(jià)值之后,那么就應(yīng)該在購(gòu)物車(chē)?yán)锩嫣砑右粋€(gè)單本刪除已選圖書(shū)或幾本圖書(shū)的刪除功能。在購(gòu)物車(chē)功能前臺(tái)頁(yè)面代碼開(kāi)發(fā)的時(shí)候,本人對(duì)頁(yè)面的跳轉(zhuǎn)做了以

24、下的設(shè)定。首先在進(jìn)入書(shū)本詳細(xì)介紹頁(yè)面的時(shí)候,在次頁(yè)面下添加了選擇購(gòu)書(shū)數(shù)量的功能,在點(diǎn)擊“購(gòu)買(mǎi)”后,頁(yè)面返回到主頁(yè)面,在再次進(jìn)入到購(gòu)物車(chē)頁(yè)面后,購(gòu)物車(chē)頁(yè)面顯示了剛才選中圖書(shū)的詳細(xì)情況,并且在此有刪除該本圖書(shū)的功能,在點(diǎn)擊“提交”后,完成該本書(shū)籍的網(wǎng)上購(gòu)買(mǎi),系統(tǒng)自動(dòng)在該用戶的余額中扣去相應(yīng)金額。在代碼開(kāi)發(fā)中,購(gòu)物車(chē)的功能是由幾個(gè)類(lèi)共同完成。buybookaction.java類(lèi)是完成購(gòu)物車(chē)圖書(shū)詳情的功能,并顯示所選書(shū)籍的user_id,book_id,buynum,和 bookname,并且將 bookname 轉(zhuǎn)碼成標(biāo)準(zhǔn)的gb2312 格式。而 delbuycartaction.java 類(lèi)是購(gòu)

25、物車(chē)中的刪除已選圖書(shū)的功能,它調(diào)用了 javabean 中的 db.java 的邏輯處理方法, 完成了對(duì)單本圖書(shū)和多本圖 3-3 購(gòu)物車(chē)界面圖第 7 頁(yè) 共 22 頁(yè)圖書(shū)刪除功能的實(shí)現(xiàn)。在前臺(tái) buycart.jsp 頁(yè)面的代碼中,也加入了一些判斷語(yǔ)句,對(duì)購(gòu)物車(chē)界面的一些操作進(jìn)行對(duì)話框提示,讓頁(yè)面更具友好化。購(gòu)物車(chē)表單功能核心代碼:/ request.getparameter 是從頁(yè)面上獲取輸入的內(nèi)容 string user_id = request.getparameter(user_id);string book_id = request.getparameter(bookid);stri

26、ng num = request.getparameter(buynum);string bookname = ;try /將 bookname 轉(zhuǎn)碼bookname=newstring(request.getparameter(bookname).getbytes(iso-8859-1), gb2312); catch (unsupportedencodingexception e) / todo auto-generated catch blocke.printstacktrace();/ 新建一個(gè) arraylist 的列表arraylist buybooklist = new arra

27、ylist();/設(shè)置一些信息,如:user_id 等,放進(jìn) buybooklistbuybooklist blist = new buybooklist();blist.setuser_id(user_id);blist.setbook_id(book_id);blist.setnum(num);blist.setbook_name(bookname);blist.setprice(request.getparameter(price);刪除書(shū)籍功能核心代碼:try /從頁(yè)面獲取參數(shù):string bid = request.getparametervalues(bid);int n = 0

28、;/從全局容器中拿到書(shū)的列表:arraylist buybooklist = (arraylist) session.getattribute(buybooklist);system.out.println(bidbid.length - 1);/這里是把列表中的書(shū)刪除掉,這個(gè) action 是做刪除的動(dòng)作,拿到了用戶選擇的書(shū)的 id 的數(shù)組(多本書(shū))bid,然后根據(jù) id 去把列表中的書(shū)刪除掉:for (int i = bid.length - 1; i = 0; i-) n = integer.parseint(bidi);buybooklist.remove(n);/把刪除后的列表放到容

29、器中:session.setattribute(buybooklist, buybooklist);/如果列表中沒(méi)書(shū)了,就不要放到容器中,用 remove 移除:第 8 頁(yè) 共 22 頁(yè)if (buybooklist.size() = 0) session.removeattribute(buybooklist);system.out.println(nullnull*);/跳轉(zhuǎn)頁(yè)面:pageforward = delbuycart;(2)充值管理功能本模塊是為了方便書(shū)店店主以管理員身份進(jìn)入后臺(tái)管理界面進(jìn)行充值操作而設(shè)計(jì)的,即當(dāng)顧客在查詢到自己余額不足的情況下,通過(guò)某種方式與店主取得聯(lián)系并在網(wǎng)

30、站外完成金額交易(比如:匯款) ,然后店主以管理員的身份進(jìn)入到后臺(tái)管理中的會(huì)員充值模塊中,選中顧客 id 后,根據(jù)需要對(duì)該用戶充值相應(yīng)的金額。本功能在設(shè)計(jì)的時(shí)候,是將此功能設(shè)定在后臺(tái)管理員界面中用戶管理模塊里面,方便管理員在對(duì)用戶信息充值的時(shí)候好對(duì)用戶信息進(jìn)行查看。在設(shè)計(jì)充值的時(shí)候,調(diào)運(yùn)了 user.java 里面的 addmoney 方法來(lái)實(shí)現(xiàn)充值功能,為了使管理員能夠及時(shí)查看到充值過(guò)后用戶余額的變化,在頁(yè)面顯示了用戶的當(dāng)前余額,并在界面設(shè)計(jì)中的 addmoney.jsp 代碼中設(shè)置了一些對(duì)管理員操作的判斷,給予一些友好提示。.2 統(tǒng)計(jì)分析模塊統(tǒng)計(jì)分析模塊本模塊包括了排行榜功

31、能和積分管理功能兩大功能,其功能主要是指顧客對(duì)本系統(tǒng)書(shū)籍的點(diǎn)擊數(shù),購(gòu)買(mǎi)數(shù)和積分事件實(shí)行的頁(yè)面實(shí)現(xiàn)功能。該模塊的功能圖如圖 3-4 所示。圖 3-4 統(tǒng)計(jì)分析模塊功能示意圖統(tǒng)計(jì)分析總排行榜周點(diǎn)擊排行榜積分查詢?nèi)拯c(diǎn)擊排行榜積分管理排行榜設(shè)定積分事件總點(diǎn)擊榜總銷(xiāo)售榜第 9 頁(yè) 共 22 頁(yè)(1)排行榜功能介紹排行榜功能說(shuō)明:排行榜模塊的實(shí)現(xiàn)是為了方便顧客在瀏覽本網(wǎng)站圖書(shū)時(shí),給予顧客選購(gòu)圖書(shū)起到一定的推薦作用。本排行榜模塊包括了總的點(diǎn)擊排行榜,總的銷(xiāo)售排行榜,還有日點(diǎn)擊排行榜跟周點(diǎn)擊排行榜。下面是排行榜界面圖, 如圖 3-5 所示。排行榜在本系主要模塊統(tǒng)統(tǒng)計(jì)分析模塊中占有重要地位,下面就來(lái)詳細(xì)講解以下

32、排行榜功能的實(shí)現(xiàn)和核心代碼。排行榜功能在設(shè)計(jì)的時(shí)候,考慮到不同用戶的愛(ài)好,就設(shè)定了有總的銷(xiāo)售排行榜,總的點(diǎn)擊排行榜,周排行榜和日排行榜,在周排行榜和日排行榜都運(yùn)用了一個(gè)系統(tǒng)監(jiān)聽(tīng)的方法來(lái)對(duì)時(shí)間周期進(jìn)行判定,從而實(shí)現(xiàn)這兩個(gè)排行榜特殊功能的,在總銷(xiāo)售排行榜里,每本書(shū)籍后都有銷(xiāo)售的數(shù)量數(shù),在三個(gè)點(diǎn)擊排行榜里,每本書(shū)后也有點(diǎn)擊數(shù)顯示。本功能的實(shí)現(xiàn)是在各個(gè)排行榜排列主頁(yè)面的右方,并運(yùn)用了下拉滾動(dòng)條來(lái)實(shí)現(xiàn)的。在代碼中,排行榜的完成是由 paihangaction.java 來(lái)實(shí)現(xiàn)的,其中 actionservlet 調(diào)用了 javabean 中 db.java 和 book.java 的邏輯處理方法。而在

33、book.java 中運(yùn)用到了gethotbooklist,gethotbooklistday,gethotbooklistweek 和gethotsellbooklist 這四個(gè)方法,這四個(gè)方法便是運(yùn)用數(shù)據(jù)庫(kù)語(yǔ)句將這四個(gè)排行榜從數(shù)據(jù)庫(kù)中搜索出來(lái),以完成這四個(gè)排行榜的實(shí)現(xiàn)。在前臺(tái) pai.jsp 頁(yè)面代碼中,實(shí)現(xiàn)了下拉滾動(dòng)條的功能,也運(yùn)用到了 book.java 中的getname,getid,getclick 和 getnum 來(lái)對(duì)三個(gè)點(diǎn)擊排行榜里面顯示點(diǎn)擊數(shù)和銷(xiāo)圖 3-5 排行榜功能界面圖第 10 頁(yè) 共 22 頁(yè)售排行榜里面顯示銷(xiāo)售數(shù)的功能實(shí)現(xiàn)。在日排行榜和周排行榜中還用到了syscon

34、textlistener.java 中的contextinitialized方法,它實(shí)現(xiàn)了日排行榜和周排行榜中時(shí)間的判定。系統(tǒng)監(jiān)聽(tīng)器實(shí)現(xiàn)的核心代碼:public void contextinitialized(servletcontextevent event) /在這里初始化監(jiān)聽(tīng)器,在 tomcat 啟動(dòng)的時(shí)候監(jiān)聽(tīng)器啟動(dòng),可以在這里實(shí)現(xiàn)定時(shí)器功能 timer = new timer(true); event.getservletcontext().log(定時(shí)器已啟動(dòng));/添加日志,可在 tomcat日志中查看到 timer.schedule(new exporthistorybean(ev

35、ent.getservletcontext(),0,60*60*1000);/調(diào)用exporthistorybean,0 表示任務(wù)無(wú)延遲,5*1000 表示每隔 5 秒執(zhí)行任務(wù),60*60*1000 表示一個(gè)小時(shí)。 event.getservletcontext().log(已經(jīng)添加任務(wù)); public void contextdestroyed(servletcontextevent event) /在這里關(guān)閉監(jiān)聽(tīng)器,所以在這里銷(xiāo)毀定時(shí)器。 timer.cancel(); event.getservletcontext().log(定時(shí)器銷(xiāo)毀); (2)積分管理功能積分管理模塊中的積分查詢

36、是讓顧客能夠查詢到自己的積分情況,本系統(tǒng)中的積分事件功能是當(dāng)你注冊(cè)成為會(huì)員用戶后,在購(gòu)買(mǎi)書(shū)籍金額累計(jì)到 500 元過(guò)后(本系統(tǒng)消費(fèi)一元就等于加積分一點(diǎn)),系統(tǒng)自動(dòng)將該會(huì)員用戶升級(jí)成vip 用戶,vip 用戶享受購(gòu)書(shū) 8 折優(yōu)惠。在設(shè)計(jì)該部分時(shí),鑒于該功能的特性,該功能是不能以功能鍵放置到頁(yè)面,因此沒(méi)對(duì)該功能做界面設(shè)計(jì),便在開(kāi)發(fā)代碼的時(shí)候,在 javabean 中的user.java 里設(shè)定了一個(gè) moneyupdate 方法,用方法中 if 判斷語(yǔ)句來(lái)對(duì)積分事件進(jìn)行判定,從而完成該功能實(shí)現(xiàn)的。第 11 頁(yè) 共 22 頁(yè).3 訂單處理模塊訂單處理模塊本模塊包括了用戶的購(gòu)買(mǎi)記錄功能

37、和管理員的消費(fèi)記錄功能,其功能是讓顧客和店主能夠自己查詢已購(gòu)書(shū)本記錄和消費(fèi)訂單記錄。該模塊的功能示意圖如圖 3-6 所示。(1)購(gòu)買(mǎi)記錄功能該功能讓用戶在該用戶的賬戶管理中,能夠?qū)崿F(xiàn)用戶對(duì)自己購(gòu)買(mǎi)書(shū)籍記錄的查看。而且還能夠?qū)崿F(xiàn)購(gòu)買(mǎi)記錄的電子報(bào)表導(dǎo)出,并且能夠完成該頁(yè)面的打印功能。該功能在設(shè)計(jì)的時(shí)候,考慮到用戶需要對(duì)自己購(gòu)買(mǎi)書(shū)本的詳細(xì)情況進(jìn)行了解或查詢,所以需要有個(gè)導(dǎo)出電子報(bào)表的功能,好讓用戶對(duì)個(gè)人購(gòu)書(shū)記錄的情況有個(gè)直觀了解,而在便于用戶對(duì)購(gòu)買(mǎi)記錄的即時(shí)保存上,本系統(tǒng)在購(gòu)買(mǎi)記錄功能界面添加了打印記錄功能。在這兩個(gè)功能的輔助下,使得用戶在對(duì)購(gòu)買(mǎi)記錄的查詢和保存上有了一定的保障措施。在打印代碼的設(shè)計(jì)

38、時(shí),是由querylistaction.java 實(shí)現(xiàn)的,里面運(yùn)用了 if 語(yǔ)句來(lái)對(duì)消費(fèi)記錄為空進(jìn)行判斷,而且其中調(diào)用了 buybooklist.java 中的 getquerylist 方法,來(lái)對(duì)消費(fèi)記錄表進(jìn)行讀取,從而實(shí)現(xiàn)打印功能。(2)消費(fèi)記錄功能消費(fèi)記錄功能說(shuō)明:該功能是讓管理員在登錄之后,對(duì)所有顧客消費(fèi)記錄的查看。其中的查詢功能能夠根據(jù)書(shū)名和用戶的 id 號(hào)來(lái)查詢相應(yīng)書(shū)籍的詳細(xì)記錄,而且能夠?qū)崿F(xiàn)購(gòu)買(mǎi)記錄的電子報(bào)表導(dǎo)出,也能夠完成該頁(yè)面的打印功能?,F(xiàn)在介紹下消費(fèi)記錄功能中電子報(bào)表導(dǎo)出的功能。設(shè)計(jì)此功能是為了方便管理員更直觀的查看消費(fèi)記錄清單。它能夠根據(jù)消費(fèi)記錄導(dǎo)出一張 excel 表,

39、包括了用戶 id,書(shū)籍名,購(gòu)買(mǎi)數(shù)量,購(gòu)買(mǎi)價(jià)格和購(gòu)買(mǎi)時(shí)間這些重要信息的導(dǎo)出。在代碼設(shè)計(jì)中,報(bào)表導(dǎo)出的功能主要是用 javabean 里面的 excelparse.java 來(lái)訂單處理圖 3-6 訂單處理模塊功能示意圖消費(fèi)記錄購(gòu)買(mǎi)記錄導(dǎo)出電子報(bào)表打印記錄記錄查詢導(dǎo)出電子報(bào)表打印記錄第 12 頁(yè) 共 22 頁(yè)實(shí)現(xiàn),在這個(gè)類(lèi)里,調(diào)用了 writeexcel 這個(gè)方法,運(yùn)用 case 語(yǔ)句來(lái)對(duì) excel表導(dǎo)出進(jìn)行判斷來(lái)完成此功能。excel 表導(dǎo)出功能核心代碼:/這個(gè)是導(dǎo)出 excel,一個(gè) workbook 就相當(dāng)于一個(gè) excel 文件:hssfworkbook wb = new hssfwork

40、book();/一個(gè) sheet 就是 excel 里面的一個(gè) sheet:hssfsheet s = wb.createsheet();/然后為 sheet 設(shè)置名字wb.setsheetname(0, 購(gòu)買(mǎi)記錄, (short) 1);/這個(gè)是表格的標(biāo)題,只是定義,還沒(méi)放到里面去string title = 用戶 id, 書(shū)籍名, 購(gòu)買(mǎi)數(shù)量, 購(gòu)買(mǎi)價(jià)格, 購(gòu)買(mǎi)時(shí)間 ;/循環(huán)寫(xiě)入 title:for (short i = 0; i title.length; i+) /新建一行:hssfrow row = s.createrow(0);/新建一個(gè) cell:hssfcell cell = r

41、ow.createcell(i);/設(shè)置編碼和值:cell.setencoding(short) 1);cell.setcellvalue(titlei);buybooklist bbl = new buybooklist();/循環(huán)列表中的書(shū),然后把內(nèi)容寫(xiě)進(jìn)去:for (short i = 1; i list.size() + 1; i+) bbl = (buybooklist) list.get(i - 1);/新建一行:hssfrow row = s.createrow(i);/循環(huán) 5 列:for (short j = 0; j 5; j+) switch (j) case 0: /第

42、一列寫(xiě)入 user_idhssfcell cell = row.createcell(j);/新建 cellcell.setcellvalue(bbl.getuser_id();/寫(xiě)入值break;case 1: /第二列寫(xiě)入 booknamecell = row.createcell(j);cell.setencoding(short) 1);cell.setcellvalue(bbl.getbook_name();break;case 2: /numcell = row.createcell(j);cell.setcellvalue(bbl.getnum();第 13 頁(yè) 共 22 頁(yè)br

43、eak;case 3: /pricecell = row.createcell(j);cell.setcellvalue(bbl.getprice();break;case 4: /buydatecell = row.createcell(j);cell.setcellvalue(bbl.getbuydate();break;.4 會(huì)員公告模塊會(huì)員公告模塊本模塊主要分為前臺(tái)的會(huì)員公告顯示和后臺(tái)的會(huì)員公告修改,其功能主要是對(duì)會(huì)員公告這一功能進(jìn)行實(shí)現(xiàn)和修改。該模塊的功能示意圖如圖 3-7 所示。(1)會(huì)員公告顯示功能會(huì)員公告顯示功能說(shuō)明:本功能是會(huì)員在登錄本系統(tǒng)之后才顯示的消息模塊

44、。此會(huì)員公告里面公告了本書(shū)店的各種活動(dòng)信息和各種重要消息,以滾動(dòng)形式顯示,便于顧客查看。在設(shè)計(jì)該功能的時(shí)候,因?yàn)榇斯δ苁秋@示本系統(tǒng)的主要消息和及時(shí)通知等重要信息的,所以該字體采用紅色字體,為了用戶能夠一直看到消息,對(duì)會(huì)員公告的顯示采用了的左右滾動(dòng)的顯示方式,進(jìn)一步讓用戶在進(jìn)入本系統(tǒng)的時(shí)候能夠了解到公告里面的重要信息。設(shè)計(jì)這個(gè)小功能時(shí),是在 right.jsp 頁(yè)面的代碼中寫(xiě)入:,便實(shí)現(xiàn)了會(huì)員公告顯示的動(dòng)作。(2)會(huì)員公告修改功能圖 3-7 會(huì)員公告模塊功能示意圖會(huì)員公告顯示會(huì)員公告修改會(huì)員公告第 14 頁(yè) 共 22 頁(yè)會(huì)員公告修改功能說(shuō)明:本功能是在管理登錄之后,在會(huì)員公告修改功能中對(duì)會(huì)員公告

45、的內(nèi)容加以修改。在代碼設(shè)計(jì)開(kāi)發(fā)中,是由 editnewaction.java 來(lái)實(shí)現(xiàn)此修改會(huì)員公告功能的,此類(lèi)調(diào)用了 javabean 中 admin.java 中的 adminupdate 方法,從而實(shí)現(xiàn)修改功能的。功能實(shí)現(xiàn)核心代碼:/從 session 中獲取一個(gè) admin 對(duì)象 admin admin = (admin) session.getattribute(admin);/獲取一個(gè) news 參數(shù)string news = request.getparameter(news);/更新到數(shù)據(jù)庫(kù)admin.adminupdate(db, admin.getadmin_id(), ad

46、min.getpsw(), news);/再把 news 設(shè)到 admin 中放入容器中admin.setnews(news);session.setattribute(admin, admin);/跳轉(zhuǎn)頁(yè)面:pageforward = editnews;db.close();return (mapping.findforward(pageforward);3.33.3數(shù)據(jù)庫(kù)設(shè)計(jì)分析數(shù)據(jù)庫(kù)設(shè)計(jì)分析根據(jù)以上對(duì)本系統(tǒng)的功能介紹,在對(duì)系統(tǒng)的開(kāi)發(fā)過(guò)程中,要實(shí)現(xiàn)運(yùn)行,至少需要有四點(diǎn)要素:用戶,管理員,書(shū)本和購(gòu)買(mǎi)記錄。因此,本系統(tǒng)才用了以這四點(diǎn)要素為主鍵的四張數(shù)據(jù)庫(kù)表。.1 用戶信息表用戶

47、信息表用戶信息表是存放用戶各種屬性和信息的數(shù)據(jù)庫(kù)表,包括了:id,user_id,psw,user_name,score,level,email,money 和 vip 這些字段,其中以 id 為主鍵。下表便是用戶信息的數(shù)據(jù)庫(kù)列表,如表 3-1 所示。表 3-1 用戶信息表列名數(shù)據(jù)類(lèi)型及長(zhǎng)度允許空描述idint(11)yes主鍵user_idvarchar(10)yes用戶登錄 idpswvarchar(50)yes密碼user_namevarchar(20)yes用戶姓名scoreint(11)n0用戶積分第 15 頁(yè) 共 22 頁(yè)levelint(1)n0用戶類(lèi)型emailvarchar(

48、50)n0用戶郵件moneydouble(10,2)n0用戶余額vipint(1)n0vip 申請(qǐng)記錄.2 圖書(shū)信息表圖書(shū)信息表圖書(shū)信息表是存放圖書(shū)各種屬性和信息的數(shù)據(jù)庫(kù)表,它是以 id 為主鍵,其他的字段有:name,author,content,kind,price,click,img 和 operatedate。下表是圖書(shū)信息表的詳細(xì)描述,如表 3-2 所示。表 3-2 圖書(shū)信息表列名數(shù)據(jù)類(lèi)型及長(zhǎng)度允許空描述idint(11)yes主鍵namevarchar(100)yes圖書(shū)名稱authorvarchar(50)yes作者contentvarchar(255)no圖書(shū)內(nèi)

49、容kindvarchar(2)no圖書(shū)類(lèi)型pricedouble(10,2)no圖書(shū)價(jià)格clickint(50)no圖書(shū)點(diǎn)擊次數(shù)imgvarchar(100)no圖書(shū)圖片operatedatedatetimeyes更新日期dayclickint(50)no每天圖書(shū)點(diǎn)擊次數(shù)weekclickint(50)no每周圖書(shū)點(diǎn)擊次數(shù).3 消費(fèi)訂單信息表消費(fèi)訂單信息表消費(fèi)訂單信息表是存放消費(fèi)訂單各種信息的表單,本系統(tǒng)建立了以消費(fèi)訂單 id 為主鍵的消費(fèi)訂單信息數(shù)據(jù)庫(kù)表,其它字段包括有:user_id,book_id,num,buydte,price 和 book_name 組成。下面就是消

50、費(fèi)訂單信息表的詳細(xì)介紹,如表 3-3 所示。表 3-3 消費(fèi)訂單信息表列名數(shù)據(jù)類(lèi)型及長(zhǎng)度允許空描述第 16 頁(yè) 共 22 頁(yè)idint(11)yes主鍵user_idvarchar(10)no用戶登錄 idbook_idint(11)no圖書(shū) id 號(hào)numint(11)no購(gòu)買(mǎi)數(shù)量buydatedatetimeyes購(gòu)買(mǎi)時(shí)間pricedouble(10,2)no購(gòu)買(mǎi)價(jià)格book_namevarchar(100)yes圖書(shū)名稱.4 管理員信息表管理員信息表管理員信息表是用來(lái)存放管理員信息的表單,本系統(tǒng)以 id 為主鍵,admin_id,psw 和 news 為其他字段,創(chuàng)建了管

51、理員信息表。下表就是管理員信息表的詳細(xì)說(shuō)明,如表 3-4 所示。表 3-4 管理員信息表列名數(shù)據(jù)類(lèi)型及長(zhǎng)度允許空描述idint(11)yes主鍵admin_idvarchar(10)yes管理員登錄 idpswvarchar(50)yes管理員登錄密碼newsvarchar(255)yes會(huì)員公告信息4 4主要功能測(cè)試主要功能測(cè)試本部分是介紹對(duì)系統(tǒng)主要功能的測(cè)試過(guò)程。4.14.1購(gòu)物車(chē)功能測(cè)試購(gòu)物車(chē)功能測(cè)試購(gòu)物車(chē)功能是本系統(tǒng)的核心功能,在測(cè)試中,主要針對(duì)在購(gòu)物車(chē)交易完成的提交功能上。在提交功能中,系統(tǒng)會(huì)根據(jù)不同情況做出相應(yīng)的提示。(1)測(cè)試點(diǎn)一當(dāng)用戶在將書(shū)本選購(gòu)到購(gòu)物車(chē)?yán)锩?,然后進(jìn)入購(gòu)物車(chē),點(diǎn)

52、擊“提交”后,但由于該用戶的余額不足以完成該次交易的時(shí)候,系統(tǒng)會(huì)自動(dòng)彈出一個(gè)對(duì)話框,提示用戶余額不足。按照健壯性的要求,本測(cè)試以兩種方法對(duì)本功進(jìn)行多次測(cè)試。第一次測(cè)試,在用戶零余額購(gòu)書(shū)的情況下得到如圖 4-1 所示結(jié)果,與預(yù)期輸出結(jié)果符合。然后按照健壯性的要求,在第二次測(cè)試中,本人對(duì)有金額的用戶進(jìn)行金額超值的購(gòu)書(shū)操作,結(jié)果也得到圖 4-1 所示。在接下的三次測(cè)試中,每次測(cè)試的結(jié)果都與預(yù)期輸出結(jié)果相同,得出結(jié)論:測(cè)試點(diǎn)一基本符合系統(tǒng)要第 17 頁(yè) 共 22 頁(yè)求。(2)測(cè)試點(diǎn)二當(dāng)用戶在余額足夠的情況下進(jìn)行交易提交,系統(tǒng)也會(huì)根據(jù)用戶的提交操作彈出一個(gè)對(duì)話框,表示交易已成功。按照健壯性的要求,本測(cè)試

53、以同種方法對(duì)本功進(jìn)行多次測(cè)試。第一次測(cè)試,用金額足夠的用戶進(jìn)行購(gòu)書(shū)交易,得到結(jié)果如圖 4-2 所示結(jié)果,與預(yù)期輸出結(jié)果符合。之后又以四個(gè)不同用戶進(jìn)行購(gòu)書(shū)操作,得到的輸出結(jié)果都與預(yù)期輸出結(jié)果相同,得出結(jié)論:此測(cè)試點(diǎn)功能符合系統(tǒng)要求。(3)測(cè)試點(diǎn)三在完成購(gòu)書(shū)交易后,系統(tǒng)對(duì)該用戶自動(dòng)扣除相應(yīng)金額。按照健壯性的要求,本測(cè)試以兩種方法對(duì)本功進(jìn)行多次測(cè)試。第一次測(cè)試,為了測(cè)試該功能的實(shí)現(xiàn),只要用戶在賬戶管理里面查看自己的余額即可驗(yàn)證。按照要求,本人在交易之前查看了用戶余額,在交易之后再次查看余額,得出了兩次余額差等于書(shū)本總額的結(jié)果,如圖 4-3 所示,與預(yù)期輸出結(jié)果符合。圖 4-1 余額不足對(duì)話框圖 4-

54、2 交易成功對(duì)話框第 18 頁(yè) 共 22 頁(yè)第二次測(cè)試,為了再次驗(yàn)證功能的可靠性,本人用查看數(shù)據(jù)庫(kù)用戶信息表中余額的變化的方法來(lái)驗(yàn)證,先在數(shù)據(jù)庫(kù)表單里面查看用戶余額,然后完成購(gòu)書(shū)交易,更新數(shù)據(jù)庫(kù)表,再次查看用戶余額,得到預(yù)期輸出結(jié)果,如圖 4-4 所示。在接下的三次測(cè)試中,運(yùn)用以上兩種方法進(jìn)行測(cè)試,結(jié)果都與預(yù)期結(jié)果一致,得出結(jié)論:本測(cè)試點(diǎn)功能基本符合系統(tǒng)要求。4.24.2排行榜功能測(cè)試排行榜功能測(cè)試排行榜功能是本系統(tǒng)的主要功能,本次為了方便測(cè)試,只對(duì)總銷(xiāo)售榜和總點(diǎn)擊榜進(jìn)行測(cè)試。.1 總銷(xiāo)售排行榜功能測(cè)試總銷(xiāo)售排行榜功能測(cè)試測(cè)試點(diǎn)是對(duì)用戶購(gòu)買(mǎi)書(shū)籍后,查看書(shū)本在排行榜中位置升降的情

55、況。按照健壯性的要求,本測(cè)試以兩種方法對(duì)本功進(jìn)行多次測(cè)試。第一次測(cè)試,要檢測(cè)排行榜的升降的情況,就只能用購(gòu)買(mǎi)數(shù)量來(lái)判定,比如在銷(xiāo)售排行榜上選擇排行第二的圖書(shū),查看它與排名第一的圖書(shū)銷(xiāo)售量的差別,然后對(duì)它進(jìn)行購(gòu)買(mǎi),購(gòu)買(mǎi)數(shù)量剛好比它們的差別數(shù)多一本,這樣就能讓此本圖書(shū)從排行榜第二的位置上升到第一的位置,借以來(lái)查看排行榜的升降情況。根據(jù)以上所述,本人對(duì)此排行榜進(jìn)行了以上操作,得到了預(yù)期的結(jié)果,如圖 4-4 所示。圖 4-3 余額功能檢測(cè)圖圖 4-4 數(shù)據(jù)庫(kù)查詢用戶余額示意圖第 19 頁(yè) 共 22 頁(yè)在第二次測(cè)試中,本人在數(shù)據(jù)庫(kù)消費(fèi)記錄表單中對(duì)書(shū)本的銷(xiāo)售量進(jìn)行手動(dòng)修改,和上面方法一樣,在數(shù)據(jù)庫(kù)中手動(dòng)將

56、一本書(shū)的銷(xiāo)售量修改到比它排名高一位的書(shū)本銷(xiāo)售量多一本,再刷新數(shù)據(jù)庫(kù),然后查看排行榜情況,也得到了預(yù)期的結(jié)果。在接下的三次測(cè)試中,本人對(duì)其他書(shū)本進(jìn)行了以上兩種不同方法的不同操作,排行榜位置的升降都得到改變,與預(yù)期結(jié)果相同,得出結(jié)論:該測(cè)試點(diǎn)功能基本符合本系統(tǒng)。.2 總點(diǎn)擊榜功能測(cè)試總點(diǎn)擊榜功能測(cè)試測(cè)試點(diǎn)是對(duì)用戶點(diǎn)擊查看書(shū)籍后,查看書(shū)本在排行榜中位置升降的情況。按照健壯性的要求,本測(cè)試以兩種方法對(duì)本功進(jìn)行多次測(cè)試。第一次測(cè)試,要查看排行榜的升降情況,就只能用點(diǎn)擊數(shù)量來(lái)判定,和上面的總銷(xiāo)售排行榜的第一次測(cè)試方法類(lèi)似。本人按照相同做法進(jìn)行操作,得到了預(yù)期的結(jié)果,如圖 4-6 所示。第二

57、次測(cè)試,本人按照總銷(xiāo)售排行榜第二次測(cè)試的方法,也在數(shù)據(jù)庫(kù)的書(shū)籍信息表單中對(duì)書(shū)本的點(diǎn)擊數(shù)進(jìn)行手動(dòng)修改,把一本書(shū)的點(diǎn)擊數(shù)修改到比它排名高一位的書(shū)本點(diǎn)擊數(shù)多一本,再刷新數(shù)據(jù)庫(kù),然后查看排行榜情況,得到了預(yù)期的結(jié)果。在接下的三次測(cè)試中,本人對(duì)其他書(shū)本進(jìn)行了以上兩種不同方法的不同操作,排行榜位置的升降都得到改變,與預(yù)期結(jié)果相同,得出結(jié)論:該測(cè)試點(diǎn)功能基本符合本系統(tǒng)。圖 4-5 總銷(xiāo)售榜功能測(cè)試圖圖 4-6 總點(diǎn)擊牌行榜功能測(cè)試圖第 20 頁(yè) 共 22 頁(yè)4.34.3系統(tǒng)測(cè)試總結(jié)系統(tǒng)測(cè)試總結(jié)本系統(tǒng)適用于有意在網(wǎng)上開(kāi)辦小型網(wǎng)上書(shū)店的用戶,對(duì)于結(jié)果比較滿意。但是還是很多不足需要改進(jìn),以后會(huì)對(duì)本系統(tǒng)做以下的改進(jìn)

58、:(1) 由于時(shí)間的關(guān)系,系統(tǒng)界面設(shè)計(jì)上還存在著一些問(wèn)題,設(shè)計(jì)的也不美觀,在以后的時(shí)間里將會(huì)的界面進(jìn)行修改,使界面看起來(lái)更美觀。(2) 在代碼編輯過(guò)程中遇到不少困難,雖然已經(jīng)和同學(xué)解決了一些,但仍有一些存在缺陷,還有就是數(shù)據(jù)庫(kù)的連接還需要進(jìn)一步改進(jìn),使之更加完善。 (3) 對(duì)于系統(tǒng)的內(nèi)容也不是很完善的。相對(duì)于大型實(shí)際的網(wǎng)上書(shū)店的某些功能還無(wú)法實(shí)現(xiàn),以后將更加認(rèn)真的學(xué)習(xí)java等相關(guān)知識(shí),爭(zhēng)取能夠獨(dú)自完成一個(gè)功能比較完善的網(wǎng)上書(shū)店系統(tǒng),并使系統(tǒng)功能更加強(qiáng)大。結(jié)結(jié) 論論本系統(tǒng)是一個(gè)基于 b/s 模式的網(wǎng)上書(shū)店銷(xiāo)售系統(tǒng),我所設(shè)計(jì)的網(wǎng)上書(shū)店,實(shí)現(xiàn)了購(gòu)物車(chē)、排行榜、訂單查詢及打印、會(huì)員公告和積分事件等功

59、能。該系統(tǒng)大部分模塊的設(shè)計(jì)和實(shí)現(xiàn)都基本滿足界面清晰、友好,操作簡(jiǎn)單的特點(diǎn),基本符合一個(gè)網(wǎng)上書(shū)店系統(tǒng)的要求,不過(guò)仍然存在著許多不足,比如:沒(méi)有實(shí)現(xiàn)真正意義上的在線支付,只是簡(jiǎn)單的實(shí)現(xiàn)了管理員手工為用戶賬戶充值,整個(gè)系統(tǒng)還不夠人性化等等,這些都有待于我在日后的學(xué)習(xí)中不斷的改進(jìn)。相信隨著電子商務(wù)技術(shù)的發(fā)展,網(wǎng)上書(shū)店系統(tǒng)會(huì)越來(lái)越受到人們的歡迎。參考文獻(xiàn)參考文獻(xiàn)1汪孝宜,劉中兵.jsp 數(shù)據(jù)庫(kù)開(kāi)發(fā)實(shí)例精粹m.北京:電子工業(yè)出版社,2005。2施霞萍,張歡歡,馬可幸.java 程序設(shè)計(jì)教程m.北京:機(jī)械工業(yè)出社,2004。3柳永坡,劉學(xué)梅.jsp 應(yīng)用開(kāi)發(fā)技術(shù)m.北京:人民郵電出版社,2005。4李育龍,

60、楊健.jsp 軟件工程案列精講m.北京:電子工業(yè)出版社,2005。5史佳,史斌星.java 基礎(chǔ)編程貫通教程m.北京:清華大學(xué)出版社, 2003。6張軍.jsp 網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)例學(xué)與實(shí)踐m.北京:清華大學(xué)出版社,2006。7黃德才.數(shù)據(jù)庫(kù)原理及其應(yīng)用教程m.北京:科學(xué)出版社,2004。第 21 頁(yè) 共 22 頁(yè)致致 謝謝本文是在杜小丹老師的熱情關(guān)心和指導(dǎo)下完成的,她淵博的知識(shí)和嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度使我受益匪淺,對(duì)順利完成本課題起到了極大的作用。在此向她表示我最衷心的感謝!在論文完成過(guò)程中,本人還得到了昌燕老師,張道明同學(xué)和曾鳴同學(xué)的熱心幫助,本人向他們表示深深的謝意!最后向在百忙之中評(píng)審本文的各位專(zhuān)家

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論