基于JSP的網(wǎng)上書(shū)店的設(shè)計(jì)與實(shí)現(xiàn)論文電子信息工程專(zhuān)業(yè)
《基于JSP的網(wǎng)上書(shū)店的設(shè)計(jì)與實(shí)現(xiàn)論文電子信息工程專(zhuān)業(yè)》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《基于JSP的網(wǎng)上書(shū)店的設(shè)計(jì)與實(shí)現(xiàn)論文電子信息工程專(zhuān)業(yè)(50頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、目錄 畢業(yè)設(shè)計(jì)說(shuō)明書(shū)(論文)中文摘要 8 Abstract 1 前言 1 第一章 緒論 2 1.1 課題背景、目的及意義 2 1.1.1. 課題背景 2 1.1.2. 課題目的及意義 2 1.2 國(guó)內(nèi)外研究現(xiàn)狀 3 1.3 可行性分析 3 (1)明確用戶(hù)需求 3 (2)可靠性分析 3 (3)技術(shù)可行性分析 4 第二章 開(kāi)發(fā)環(huán)境與主要技術(shù) 5 2.1 開(kāi)發(fā)平臺(tái) 5 2.2 主要技術(shù) 5 2.2.1. Java簡(jiǎn)介 5 2.2.2. JSP簡(jiǎn)介 5 2.2.3. Servlet 6 2.2.4. JavaBean 7 2.3 MySQL 7 2.4 J
2、DBC 7 第三章 需求分析 9 3.1 系統(tǒng)需求 9 3.2 用戶(hù)需求 9 第四章 系統(tǒng)設(shè)計(jì) 10 圖4-1三層架構(gòu)模型圖 10 4.1 系統(tǒng)流程 10 圖4-2 前臺(tái)工作流程圖 11 圖4-3 后臺(tái)工作流程圖 11 4.2 系統(tǒng)功能模塊概述與分析 12 1.前臺(tái)部分: 12 2.后臺(tái)部分: 12 4.3 系統(tǒng)功能模塊設(shè)計(jì) 13 圖4-4 前臺(tái)功能模塊圖 13 圖4-5 后臺(tái)功能模塊圖 14 4.4 數(shù)據(jù)庫(kù)設(shè)計(jì) 14 4.4.1. 數(shù)據(jù)庫(kù)需求分析 14 圖4-6 系統(tǒng)E-R圖 15 圖4-7 用戶(hù)信息實(shí)體圖 15 圖4-8 圖書(shū)信息實(shí)體圖 16 圖4
3、-9 圖書(shū)分類(lèi)實(shí)體圖 16 圖4-10 訂單實(shí)體圖 16 圖4-11 訂單列表實(shí)體圖 17 4.4.2. 數(shù)據(jù)庫(kù)表設(shè)計(jì) 17 表4-1 圖書(shū)信息表 17 表4-2 用戶(hù)信息表 18 表4-3 訂單信息表 18 表4-4 訂單列表 19 表4-5 管理員信息表 19 表4-6 圖書(shū)分類(lèi)表(一級(jí)分類(lèi)) 19 表4-7 圖書(shū)分類(lèi)表(二級(jí)分類(lèi)) 19 表4-8 留言信息表 19 表4-9 公告表 20 第五章 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn) 21 5.1 用戶(hù)界面設(shè)計(jì)與實(shí)現(xiàn) 21 5.1.1 首頁(yè)設(shè)計(jì) 21 圖5-1 網(wǎng)站首頁(yè)界面 22 5.2 用戶(hù)模塊 22 5.2.1 用戶(hù)
4、注冊(cè) 22 圖5-2 用戶(hù)注冊(cè)界面 23 5.2.2 用戶(hù)登錄 24 圖5-3 用戶(hù)登錄界面 25 圖5-4 登錄之后顯示當(dāng)前用戶(hù)名界面 26 5.2.3個(gè)人信息管理 26 圖5-5 用戶(hù)修改資料界面 27 5.2.3.2修改密碼 27 圖5-6 用戶(hù)修改密碼界面 28 5.2.3.3購(gòu)物車(chē)管理 28 圖5-7 查看我的購(gòu)物車(chē)界面 29 5.2.3.4 生成訂單 29 圖5-8 生成訂單界面 30 while(it.hasNext()){ 30 5-9 查看訂單界面 31 圖5-10 訂單詳情界面 31 5.2.4 圖書(shū)查詢(xún) 31 圖5-11 圖書(shū)詳細(xì)信息界面
5、 32 圖5-12 高級(jí)搜索圖書(shū)界面 34 5.3 管理員模塊 34 5.3.1 管理員登陸 34 圖5-13 管理員登陸界面 34 5.3.2 后臺(tái)主頁(yè) 35 圖5-14 后臺(tái)主頁(yè)界面 36 5.3.3 用戶(hù)管理 36 圖5-15 查看用戶(hù)界面 37 5.3.4 訂單管理 37 圖5-16 查看訂單界面 37 5.3.5 圖書(shū)管理 37 圖5-17 添加圖書(shū)界面 38 圖5-18 查看所有圖書(shū)界面 39 5.3.6 公告管理 39 圖5-19 添加公告頁(yè)面 39 5.3.7留言管理 39 圖5-20 查看留言界面 39 5.3.8 個(gè)人信息修改 40 圖
6、5-21 管理員修改密碼界面 40 第六章 系統(tǒng)測(cè)試 41 6.1 測(cè)試的目的與目標(biāo) 41 6.2 測(cè)試方法 41 6.3測(cè)試用例 42 表6-1 用戶(hù)登錄用例表: 42 表6-2 管理員登陸用例表: 42 第七章 結(jié)論 43 中文摘要 隨著科學(xué)技術(shù)的發(fā)展,網(wǎng)絡(luò)的普及,人們?cè)絹?lái)越想要追求花少量時(shí)間完成相同事情的生活方式。由于書(shū)籍的種類(lèi)以及購(gòu)書(shū)時(shí)所花的時(shí)間給人們帶來(lái)太多的不變,網(wǎng)上購(gòu)書(shū)變成了人們的向往。 網(wǎng)上書(shū)店的開(kāi)發(fā)給人們帶來(lái)了方便,能夠讓他們不用出門(mén),花更少的時(shí)間就可以買(mǎi)到自己想要的書(shū)籍,既省時(shí)又省力。而網(wǎng)上書(shū)店給人們帶來(lái)的好處不僅如此,它還給商家?guī)?lái)更多益處。商家可以不
7、用再受地域的限制而愁書(shū)會(huì)賣(mài)不出去等更多的問(wèn)題。 本系統(tǒng)采用MyEclipse,JSP為主要工具,實(shí)現(xiàn)用戶(hù)注冊(cè)、登錄、瀏覽書(shū)籍,添加購(gòu)物車(chē),管理員管理書(shū)籍、公告、留言等功能。 關(guān)鍵詞 電子商務(wù) 網(wǎng)上書(shū)城 JSP Abstract With the development of science and technology, the popularity of the Internet, people more and more people want to pursue a little time to complete th
8、e same thing life style. Due to the kind of books and the textbook take time to bring too much unchanged, online bookstores became people yearn for. The development of the online bookstore has brought people convenience, can let them need not go out, spend less time can buy the books they want, bot
9、h time and effort. And the benefits of online bookstores to the people not only that, it also brings more benefits to the merchant. Businesses can no longer be subject to geographical restrictions and worry will not sell more problems. This system uses MyEclipse, JSP as the main tool, realizes the
10、user registration, log in, browse the books, add the shopping cart, the manager manages the books, the announcement, the message and so on functions. Keywords: E-commerce, Online Bookstore, JSP -ii- 前言 現(xiàn)如今,我們正處在網(wǎng)絡(luò)快速發(fā)展的信息化時(shí)代,隨著計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)的不斷發(fā)展與成熟,互聯(lián)網(wǎng)已經(jīng)深刻的影響著人們的生活,改變著人們?cè)缇鸵呀?jīng)習(xí)慣
11、的生活方式,并且成為收集提供信息的一種渠道。 于是,電子商務(wù)以一種難以預(yù)見(jiàn)的速度快速發(fā)展起來(lái),越來(lái)越多的商家開(kāi)起網(wǎng)店,給消費(fèi)者灌輸一種新的消費(fèi)觀(guān)念。 隨著互聯(lián)網(wǎng)和電商的迅速發(fā)展,網(wǎng)上書(shū)店的出現(xiàn)改變了某個(gè)書(shū)店一家獨(dú)大的局面。大家開(kāi)始更傾向于更加方便、更加快捷的訂購(gòu)書(shū)籍的方式,因而,網(wǎng)上書(shū)店成為潮流是可以預(yù)見(jiàn)的。網(wǎng)上書(shū)店的能夠大肆興起,與之相關(guān)的,實(shí)體書(shū)店就一定會(huì)受到影響。但這種影響的程度,我們不得而知。 本網(wǎng)上書(shū)店系統(tǒng)主要按模塊劃分,每個(gè)模塊實(shí)現(xiàn)的功能都不一樣,不同權(quán)限的人的功能又是不一樣的,進(jìn)一步體現(xiàn)模塊劃分的好處:分工明確,思路清晰。本系統(tǒng)實(shí)現(xiàn)的功能主要有:查詢(xún)書(shū)籍、添加至購(gòu)物車(chē)、下訂
12、單和管理員的用戶(hù)管理、書(shū)籍管理、留言管理等。 第一章 緒論 隨著Internet的發(fā)展,擁有自己的網(wǎng)站的企業(yè)越來(lái)越多,同時(shí),電子商務(wù)服務(wù)亦成為現(xiàn)代企業(yè)不可越少的內(nèi)容。當(dāng)然,目前很多企業(yè)并不滿(mǎn)足于自己的網(wǎng)站是靜態(tài)的,他們需要的是功能強(qiáng)大,能夠提供完善服務(wù)的動(dòng)態(tài)的電子商務(wù)網(wǎng)站。 1.1 課題背景、目的及意義 1.1.1. 課題背景 隨著網(wǎng)絡(luò)在人們生活中的普遍性越來(lái)越大和越來(lái)越流行的電子商務(wù),網(wǎng)上書(shū)店的不斷發(fā)展是整個(gè)電子商務(wù)行業(yè)不斷發(fā)展與成熟的必然結(jié)果。這種新穎的銷(xiāo)售形式與傳統(tǒng)的書(shū)店銷(xiāo)售方式相比,網(wǎng)上圖書(shū)銷(xiāo)售擁有更多的優(yōu)勢(shì):一、降低了銷(xiāo)售成本;二、利用網(wǎng)絡(luò)交易,
13、改變了傳統(tǒng)的在書(shū)店時(shí)拿時(shí)付的交易方式,使這種交易活動(dòng)不受空間和時(shí)間的限制;三:信息的傳遞更加迅速,買(mǎi)家可以及時(shí)看到新更新的書(shū)籍信息,從而也就可以立即進(jìn)行交易,進(jìn)一步提高了交易的效率。這些優(yōu)勢(shì)使得網(wǎng)上書(shū)店流行起來(lái)。 網(wǎng)上書(shū)店的主要功能是:將網(wǎng)站作為交易平臺(tái),以網(wǎng)站的形式將書(shū)籍的一些基本信息發(fā)布到Internet中,買(mǎi)家可以通過(guò)登錄售書(shū)網(wǎng)站瀏覽圖書(shū)信息,添加購(gòu)物車(chē),提交訂單等訂購(gòu)圖書(shū),實(shí)現(xiàn)在線(xiàn)交易。 1.1.2. 課題目的及意義 由于網(wǎng)絡(luò)已經(jīng)覆蓋全球,其信息量的巨大以及更新速度讓網(wǎng)上書(shū)店具有很大的優(yōu)勢(shì)。而網(wǎng)上書(shū)店的售書(shū)理念亦很簡(jiǎn)單,網(wǎng)站可以根據(jù)買(mǎi)家的喜好搜索來(lái)找到他們想要的書(shū)籍,減少買(mǎi)家自己
14、慢慢查詢(xún)的時(shí)間。網(wǎng)上書(shū)店帶給買(mǎi)家的好處不止如此,相對(duì)于實(shí)體書(shū)店來(lái)說(shuō),網(wǎng)上書(shū)店永遠(yuǎn)不會(huì)關(guān)門(mén),因而可以隨時(shí)隨地的查詢(xún)和訂購(gòu)書(shū)籍,從而減少買(mǎi)家親臨書(shū)店,一本本翻找的時(shí)間。有了網(wǎng)上書(shū)店,買(mǎi)家只要登錄購(gòu)書(shū)網(wǎng)站既可以買(mǎi)到自己想要的書(shū)籍,同時(shí),網(wǎng)上書(shū)店也提供給買(mǎi)家更多的選擇,瀏覽不同的商家即可做到貨比三家,從而優(yōu)化自己的選擇。 網(wǎng)上書(shū)店的意義在于提供更加高效的交易方式,節(jié)省人們購(gòu)書(shū)時(shí)所花的時(shí)間。除此之外,方便、廉價(jià)、高效的網(wǎng)上書(shū)店銷(xiāo)售方式亦可促進(jìn)文化的傳播,促進(jìn)社會(huì)的發(fā)展和帶動(dòng)經(jīng)濟(jì)的增長(zhǎng)。 1.2 國(guó)內(nèi)外研究現(xiàn)狀 隨著人們生活水平的不斷提高,電子商務(wù)的不斷成熟,網(wǎng)上購(gòu)物的發(fā)展趨勢(shì)也會(huì)隨之發(fā)生改變。目前
15、呈現(xiàn)出兩種不同的趨勢(shì):一種價(jià)格較低,像平時(shí)超市購(gòu)物一樣,物美價(jià)廉;還有一種則是出售高檔消費(fèi)商品。而這兩種趨勢(shì)的發(fā)展與人們的消費(fèi)觀(guān)念不無(wú)關(guān)系。隨著人們消費(fèi)觀(guān)念的不斷改變,網(wǎng)上購(gòu)物越來(lái)越得到人們的認(rèn)可。如今,網(wǎng)絡(luò)與我們的生活息息相關(guān),更有甚者說(shuō),人們已經(jīng)離不開(kāi)網(wǎng)絡(luò)。而網(wǎng)絡(luò)的發(fā)展從發(fā)E-mail、查看新聞到今天的網(wǎng)上購(gòu)物,不得說(shuō)網(wǎng)絡(luò)給人類(lèi)生活方式帶來(lái)的變化不止一兩點(diǎn)。電商為何發(fā)展的如此迅速?這不得不說(shuō)這是源于人們喜歡嘗試新鮮事物的態(tài)度,如果這些新鮮事物給自己帶來(lái)了方便,讓自己的生活更加充實(shí),人們便會(huì)將其推至流行的前線(xiàn),而電子商務(wù)正是作為一種新鮮事物被人們推到了今天流行的地步。 1.3 可行性分析
16、 隨著互聯(lián)網(wǎng)的迅速發(fā)展以及網(wǎng)絡(luò)人口的不斷增加,網(wǎng)絡(luò)世界更加廣博,更加豐富。而人們?cè)絹?lái)越追求的高效率,低消費(fèi)的生活方式使得網(wǎng)上售書(shū)成為一種潮流。 在開(kāi)發(fā)網(wǎng)上書(shū)店之前進(jìn)行一系列的調(diào)查是必須的,調(diào)查并進(jìn)行分析主要有以下幾個(gè)方面: (1)明確用戶(hù)需求 通過(guò)調(diào)查,明確用戶(hù)真正需要的是什么及用戶(hù)需求。 (2)可靠性分析 在明確用戶(hù)需求以及得出調(diào)查結(jié)果的基礎(chǔ)上,從社會(huì)、經(jīng)濟(jì)、技術(shù)等方面來(lái)分析本系統(tǒng)的開(kāi)發(fā)工作是否可靠。 (3)技術(shù)可行性分析 技術(shù)可行性分析主要包括:一:目前應(yīng)經(jīng)存在的技術(shù)是否支持或適合開(kāi)發(fā)能夠達(dá)到用戶(hù)標(biāo)準(zhǔn)的項(xiàng)目;二:開(kāi)發(fā)人員的水平和數(shù)量。 (3.1)技術(shù)支持
17、 根據(jù)即將開(kāi)發(fā)的新項(xiàng)目的目標(biāo),考慮目前有哪些技術(shù)支持或適合開(kāi)發(fā)新項(xiàng)目。 (3.2)軟件資源 軟件資源的可行性分析主要包括: ①操作系統(tǒng)的選擇; ②編譯系統(tǒng)的選擇; 本系統(tǒng)主要采用JSP、Servlet和MySQL開(kāi)發(fā),Windows7操作系統(tǒng),采用JDBC與數(shù)據(jù)庫(kù)連接,完成數(shù)據(jù)的添加、刪除、修改和查詢(xún)功能。由于JSP、Servlet功能比較強(qiáng)大,MySQL 又具有靈活易維護(hù)、方便快捷的特點(diǎn)以及目前這些技術(shù)與軟件的廣泛使用,因而JSP、Servlet、MySQL成為開(kāi)發(fā)該系統(tǒng)的最佳組合,從而說(shuō)明技術(shù)的可行性。 第二章 開(kāi)發(fā)環(huán)境與主要技術(shù) 本章主要對(duì)以
18、MyEclipse為核心的Web項(xiàng)目的開(kāi)發(fā)環(huán)境進(jìn)行介紹,并對(duì)該課題開(kāi)發(fā)過(guò)程中的一些相關(guān)技術(shù)進(jìn)行介紹 2.1 開(kāi)發(fā)平臺(tái) 本網(wǎng)上書(shū)店的開(kāi)發(fā)平臺(tái)為: 操作系統(tǒng):Microsoft Windows7 程序語(yǔ)言:Java 、Jsp 開(kāi)發(fā)工具:MyEclipse MyEclipse(My Eclipse Enterprise Workbench)是對(duì)Eclipse IDE的擴(kuò)展的簡(jiǎn)稱(chēng),它可以提高開(kāi)發(fā)人員在開(kāi)發(fā)和數(shù)據(jù)庫(kù)、JavaEE有關(guān)項(xiàng)目的工作效率。它的功能比較豐富,是功能比較完善的集成開(kāi)發(fā)環(huán)境。HTML,Struts,CSS, Hibernet,Javascript等。 2.2 主
19、要技術(shù) 2.2.1. Java簡(jiǎn)介 Java是一種面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,是由Sun Microsystemes公司推出的。由它撰寫(xiě)的應(yīng)用軟件程序具有跨平臺(tái)性。Java能夠被廣泛使用,主要是由于它的很多特性,例如:面向?qū)ο?,結(jié)構(gòu)中立,可移植,健壯安全等。 2.2.2. JSP簡(jiǎn)介 JSP( JavaServer Pages),Java服務(wù)器頁(yè)面,是由Sun公司和其他公司一起創(chuàng)建的一種技術(shù)標(biāo)準(zhǔn)。它可以使開(kāi)發(fā)人員響應(yīng)客戶(hù)端請(qǐng)求并生成HTML、XML或其他格式的Web網(wǎng)頁(yè)。JSP技術(shù)的腳本語(yǔ)言是由Java語(yǔ)言實(shí)現(xiàn)的,JSP網(wǎng)頁(yè)提供了一個(gè)服務(wù)于HTTP應(yīng)用程序的借口給整個(gè)服務(wù)器端的Java庫(kù)
20、單元。 JSP向HTML網(wǎng)頁(yè)文件中加入它自己的標(biāo)簽和一些Java程序片段來(lái)擴(kuò)展它本身具有的功能,這些Java程序片段可以實(shí)現(xiàn)以下功能:發(fā)送E-mail、操縱數(shù)據(jù)庫(kù)、跳轉(zhuǎn)新頁(yè)面(重定向網(wǎng)頁(yè))。 2.2.2.1. request、out和response ----與訪(fǎng)問(wèn)者的交互 網(wǎng)頁(yè)中最常做的事情莫過(guò)于:接受客戶(hù)端的請(qǐng)求和想客戶(hù)端返回信息,而這些事情在JSP中主要由request、response和out這三大對(duì)象實(shí)現(xiàn)。 Request:從客戶(hù)端向服務(wù)器發(fā)送請(qǐng)求,主要是用于接收數(shù)據(jù),而這些數(shù)據(jù)則是通過(guò)HTTP協(xié)議傳送到服務(wù)器。而這些由客戶(hù)端通過(guò)HTML表單或在網(wǎng)頁(yè)地址后提供參數(shù)的方法提交的
21、數(shù)據(jù)主要是由request的各種方法獲取。 Response:該對(duì)象與request對(duì)象相對(duì)應(yīng),它的主要任務(wù)是響應(yīng)客戶(hù)端請(qǐng)求并向客戶(hù)端輸出信息。該對(duì)象是實(shí)現(xiàn)HttpServletResponse接口的對(duì)象,它封裝了JSP產(chǎn)生的響應(yīng),并將該響應(yīng)發(fā)送到客戶(hù)端。 Out:該對(duì)象的主要任務(wù)是向客戶(hù)端(即Web瀏覽器內(nèi))輸出數(shù)據(jù),同時(shí)應(yīng)用服務(wù)器上的輸出緩沖區(qū)也受其管理。由于該緩沖區(qū)是有默認(rèn)值的,想要修改該緩沖區(qū)的大小,只有通過(guò)調(diào)用JSP的page指令。 2.2.2.2. Session 保持訪(fǎng)問(wèn)者的會(huì)話(huà)狀態(tài) session對(duì)象保持服務(wù)器與客戶(hù)端之間的連接,即保持會(huì)話(huà)。但是session對(duì)象是有
22、時(shí)間限制的,一旦超過(guò)規(guī)定的時(shí)間,客戶(hù)端仍然沒(méi)有向服務(wù)器發(fā)出應(yīng)答請(qǐng)求,該對(duì)象就會(huì)自動(dòng)消失,同時(shí)會(huì)話(huà)結(jié)束。 2.2.3. Servlet Servlet是一種服務(wù)器技術(shù),它獨(dú)立于平臺(tái)和協(xié)議。同時(shí),它還能夠作為生成動(dòng)態(tài)的Web頁(yè)面的一項(xiàng)技術(shù)。而Servlet的主要任務(wù)是處理客戶(hù)端傳來(lái)的HTTP請(qǐng)求并返回給客戶(hù)端一個(gè)響應(yīng)。而Servlet的下列特點(diǎn):移植性高,功能強(qiáng)大,投資少,效率高,安全性高成了很多企業(yè)選擇它作為Web項(xiàng)目不可缺少的一項(xiàng)技術(shù)的依據(jù)。 servlet處理表單數(shù)據(jù):JSP中主要使用HttpServletRequest接口處理表單操作。 1. getParameter():獲
23、取請(qǐng)求中指定參數(shù)的值 2. getParameterValues():獲取請(qǐng)求中所有參數(shù)的值 3. gerParameterNames():獲取請(qǐng)求中所有參數(shù)的名字 2.2.4. JavaBean JavaBean組件是利用Java語(yǔ)言編寫(xiě)的組件,它很好的體現(xiàn)了Java三大特性其中之一的封裝性。雖然使用JavaBean的人并不知道它的內(nèi)部的構(gòu)造如何,但它卻能夠適應(yīng)用戶(hù)的要求,這點(diǎn)是非常強(qiáng)大的。而一個(gè)成功的JavaBean應(yīng)具備“一次性編寫(xiě),任何地方執(zhí)行,任何地方重用”的特點(diǎn)。 一次性編寫(xiě):重用是不需要重新編寫(xiě),開(kāi)發(fā)者可以根據(jù)不同的需求對(duì)其進(jìn)行修改和升級(jí)即可。 任何地方執(zhí)行:可以運(yùn)行
24、于任何一個(gè)平臺(tái),因?yàn)镴avaBean是由Java語(yǔ)言編寫(xiě)而成,所以它也具有跨平臺(tái)性。 任何地方重用:可以在多種不同的方案中使用,可以是Web應(yīng)用、一般的應(yīng)用程序等等。 2.3 MySQL MySQL是由MySQL AB公司開(kāi)發(fā)、發(fā)布并支持的開(kāi)放源碼的數(shù)據(jù)庫(kù)。它是目前最流行的網(wǎng)絡(luò)化的跨平臺(tái)的關(guān)系型數(shù)據(jù)庫(kù)。它的體積小,速度快,成本低的特點(diǎn)促使它成為許多中小型網(wǎng)站的選擇。 2.4 JDBC JDBC是由一組用Java語(yǔ)言編寫(xiě)的類(lèi)型和接口組成的用于執(zhí)行SQL語(yǔ)句的API類(lèi)包。 JDBC的全稱(chēng)是Java DataBase Connectivity,它是一套應(yīng)用程序接口,具有面向?qū)ο蟮奶攸c(diǎn)。這
25、些接口是為各關(guān)系型數(shù)據(jù)庫(kù)所提供的,各廠(chǎng)商可以根據(jù)不同的數(shù)據(jù)庫(kù)來(lái)分別實(shí)現(xiàn)這些接口。自從有了JDBC,開(kāi)發(fā)人員能夠讓自己編寫(xiě)的數(shù)據(jù)庫(kù)應(yīng)用程序真正意義上的實(shí)現(xiàn)軟件的跨平臺(tái)性。 JDBC訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)時(shí),需要在程序的業(yè)務(wù)邏輯中直接嵌入SQL語(yǔ)句。但是JDBC必須依賴(lài)由數(shù)據(jù)庫(kù)廠(chǎng)商提供的JDBC驅(qū)動(dòng)程序才能訪(fǎng)問(wèn)數(shù)據(jù)庫(kù),否則JDBC是無(wú)法直接訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)的。 由于JDBC具有下列優(yōu)點(diǎn): 1、JDBC和ODBC差不多,易于理解; 2、軟件開(kāi)發(fā)人員可以不用再去編寫(xiě)復(fù)雜的驅(qū)動(dòng)程序,只需專(zhuān)注于自己要開(kāi)發(fā)的軟件的業(yè)務(wù)邏輯即可; 3、能夠支持很多家的關(guān)系型數(shù)據(jù)庫(kù),將軟件的可移植性提高到最高; 4、由于JDBC
26、API是面向?qū)ο蟮?,開(kāi)發(fā)人員可以將其中經(jīng)常用到的方法再次封裝提高代碼的可重用性; JDBC成為開(kāi)發(fā)小型項(xiàng)目的一個(gè)不錯(cuò)的選擇。 第三章 需求分析 3.1 系統(tǒng)需求 系統(tǒng)采用JSP、Servlet作為開(kāi)發(fā)工具,開(kāi)發(fā)一個(gè)能實(shí)現(xiàn)簡(jiǎn)單的電子商務(wù)網(wǎng)站----網(wǎng)上書(shū)店。 該系統(tǒng)可以實(shí)現(xiàn)用戶(hù)的注冊(cè)、登錄 、留言和退出網(wǎng)站的功能,實(shí)現(xiàn)書(shū)籍的查詢(xún)、加購(gòu)物車(chē)、下訂單等功能;管理員可以管理用戶(hù)、管理書(shū)籍、管理公告、管理留言等等。 3.2 用戶(hù)需求 該網(wǎng)上書(shū)店系統(tǒng)是用JSP+MySQL數(shù)據(jù)庫(kù)作為后臺(tái),系統(tǒng)是基于Web的網(wǎng)上書(shū)店系統(tǒng),在系統(tǒng)中分為二種用戶(hù)類(lèi)型:用戶(hù)、管理員。 1、 系統(tǒng)管理員:系統(tǒng)管理員
27、維護(hù)系統(tǒng)的所有信息,包括:用戶(hù)信息,圖書(shū)信息和用戶(hù)訂單信息。 2、 用戶(hù):用戶(hù)又可以具體分為注冊(cè)用戶(hù)和未注冊(cè)用戶(hù)兩類(lèi),未注冊(cè)用戶(hù)只能瀏覽網(wǎng)站的圖書(shū)信息,不能訂購(gòu)圖書(shū);注冊(cè)用戶(hù)可以登錄網(wǎng)站后加購(gòu)物車(chē)下訂單訂購(gòu)圖書(shū)。 第四章 系統(tǒng)設(shè)計(jì) 該項(xiàng)目采用三層架構(gòu)設(shè)計(jì),它的工作原理圖如下所示: 圖4-1三層架構(gòu)模型圖 4.1 系統(tǒng)流程 前臺(tái):進(jìn)入網(wǎng)站后,無(wú)論是否登錄,均可瀏覽書(shū)籍,但要進(jìn)入個(gè)人管理器(將書(shū)籍加購(gòu)物車(chē)、下訂單、留言等)必須登錄才可以。沒(méi)有賬號(hào)的需注冊(cè)后再登錄,流程圖如下所示。 圖4-2 前臺(tái)工作流程圖 后臺(tái):管理員進(jìn)入網(wǎng)站時(shí),必須登錄才能進(jìn)入管理界面
28、,進(jìn)入后臺(tái)之后就可以操作想要操作的內(nèi)容。工作流程圖如下。 圖4-3 后臺(tái)工作流程圖 4.2 系統(tǒng)功能模塊概述與分析 1.前臺(tái)部分: 用戶(hù)管理:注冊(cè)會(huì)員、登錄網(wǎng)站、注銷(xiāo)(退出)、修改登錄密碼; 查看圖書(shū):高級(jí)搜索圖書(shū)(按分類(lèi)、上架時(shí)間、價(jià)格等)、查看某本圖書(shū)的詳細(xì)信息; 購(gòu)物車(chē)管理:添加書(shū)籍至購(gòu)物車(chē)、修改購(gòu)物車(chē)中商品的數(shù)量、刪除購(gòu)物車(chē)中商品; 訂單管理:通過(guò)購(gòu)物車(chē)中圖書(shū)生成訂單、查看我的訂單、查看某個(gè)訂單的詳細(xì) 2.后臺(tái)部分: 用戶(hù)管理:查看所有用戶(hù)和單個(gè)用戶(hù)的詳細(xì)信息、修改和刪除用戶(hù); 圖書(shū)管理:查看圖書(shū)詳情、修改/刪除圖書(shū)、添加分類(lèi); 訂單管理:查看所有訂單和單個(gè)訂
29、單的詳情、修改訂單的發(fā)貨狀態(tài)(0表示未發(fā)貨,1表示已發(fā)貨)、凍結(jié)(取消)訂單、刪除訂單; 公告管理:查看已有的公告、添加新公告、刪除公告; 留言管理:查看、刪除留言。 4.3 系統(tǒng)功能模塊設(shè)計(jì) 圖4-4 前臺(tái)功能模塊圖 圖4-5 后臺(tái)功能模塊圖 4.4 數(shù)據(jù)庫(kù)設(shè)計(jì) 4.4.1. 數(shù)據(jù)庫(kù)需求分析 通過(guò)調(diào)查分析,得出以下的需求: 用戶(hù)分為游客(未注冊(cè))和會(huì)員(已注冊(cè));訂單分為詳細(xì)訂單,而多個(gè)詳細(xì)訂單又構(gòu)成了一個(gè)總訂單;一個(gè)用戶(hù)可以購(gòu)買(mǎi)多本圖書(shū),可以生成多張訂單。 本系統(tǒng)的的總E-R圖如下所示: 圖4-6 系統(tǒng)E-R圖 根據(jù)上面的E-R圖得知,本系統(tǒng)中的主要實(shí)體
30、有:用戶(hù)、書(shū)籍、圖書(shū)分類(lèi)、訂單、管理員,還有一層訂單與訂單項(xiàng)之間的關(guān)系為多個(gè)訂單項(xiàng)構(gòu)成了一個(gè)訂單列表。 用戶(hù)信息實(shí)體如下圖所示,它的屬性有:用戶(hù)名、密碼、會(huì)員積分、真實(shí)姓名、地址、手機(jī)號(hào)等等(由于屬性太多,此處就不一一列舉) 圖4-7 用戶(hù)信息實(shí)體圖 書(shū)籍實(shí)體如下圖所示,它的屬性有:書(shū)籍編號(hào)、書(shū)名、分類(lèi)、作者、價(jià)格、出版社、ISBN等(此處不一一列舉) 圖4-8 圖書(shū)信息實(shí)體圖 圖書(shū)分類(lèi)實(shí)體如下圖所示,它的屬性有分類(lèi)編號(hào)、類(lèi)名。 圖4-9 圖書(shū)分類(lèi)實(shí)體圖 訂單實(shí)體如下圖所示,它的屬性有訂單號(hào)、收貨人姓名、地址、郵編等。 圖4-10 訂單實(shí)體圖 訂單
31、列表實(shí)體如下圖所示。它的屬性有訂單號(hào)、用戶(hù)編號(hào)、圖書(shū)號(hào)、價(jià)格、數(shù)量等。 圖4-11 訂單列表實(shí)體圖 4.4.2. 數(shù)據(jù)庫(kù)表設(shè)計(jì) 表4-1 圖書(shū)信息表 字段名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 允許空 說(shuō)明 bookId int 4 no 自動(dòng)編號(hào),主鍵 bookname int 4 yes 書(shū)名 subTypeId int 11 yes 圖書(shū)子類(lèi)別 superTypeId int 11 yes 圖書(shū)父類(lèi)別 author varchar 100 yes 圖書(shū)作者 publisher float 8 yes 出版社 ISBN var
32、char 100 yes ISBN號(hào) introduce text 16 yes 內(nèi)容介紹 price float 4 yes 原價(jià) bookNum int 4 yes 總數(shù)量 nowPrice float 4 yes 現(xiàn)價(jià) pages int 11 yes 頁(yè)數(shù) Leav_number int 4 yes 庫(kù)存量 picture longblob 4 yes 封面 newBooks int 11 yes 新書(shū)標(biāo)識(shí) saleBooks int 11 yes 特價(jià)書(shū)標(biāo)識(shí) hostBooks int
33、 11 yes 熱賣(mài)書(shū)標(biāo)識(shí) specialBooks int 11 yes 特別推薦標(biāo)識(shí) inTime timestamp 8 no 入庫(kù)時(shí)間 表4-2 用戶(hù)信息表 字段名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 允許空 說(shuō)明 id int 4 no 自動(dòng)編號(hào)會(huì)員編號(hào) name varchar 4 no 用戶(hù)名 password varchar 100 no 密碼 score int 4 yes 會(huì)員積分 trueName varchar 50 yes 名字 address varchar 50 yes 地址 mpho
34、ne varchar 50 yes 固話(huà) phone varchar 25 yes 手機(jī) postcode varchar 25 yes 郵編 email varchar 25 yes 郵箱 birthday varchar 8 yes 生日 question varchar 100 no 密保問(wèn)題 img varchar 100 yes 頭像地址 answer varchar 20 no 密?;卮? 表4-3 訂單信息表 字段名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 允許空 說(shuō)明 orderId int 11 no
35、自動(dòng)編號(hào)訂單編號(hào) name varcher 20 yes 會(huì)員名 recvName varcher 20 yes 收件人名字 address varcher 20 yes 收件人地址 postcode varcher 20 yes 收件人郵編 email varcher 20 yes 收件人電子郵箱 orderDate timestamp 8 no 下訂單時(shí)間 flag int 11 yes 是否發(fā)貨 表4-4 訂單列表 字段名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 允許空 說(shuō)明 orderItemId int 11 no
36、自動(dòng)編號(hào)卡類(lèi)型編號(hào) orderId int 11 yes 訂單號(hào) bookId int 11 yes 圖書(shū)號(hào) bookName varchar 50 yes 圖書(shū)名 price float 11 yes 價(jià)格 bookNum int 11 yes 數(shù)量 表4-5 管理員信息表 字段名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 允許空 說(shuō)明 Name varchar 20 yes 管理員用戶(hù)名 Passworc varchar 50 yes 管理員密碼 表4-6 圖書(shū)分類(lèi)表(一級(jí)分類(lèi)) 字段名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 允許空 說(shuō)明
37、superTypeId int 4 自動(dòng)編號(hào)父類(lèi)型編號(hào) typeName varchar 30 yes 圖書(shū)類(lèi)別 表4-7 圖書(shū)分類(lèi)表(二級(jí)分類(lèi)) 字段名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 允許空 說(shuō)明 subTypeId int 11 no 自動(dòng)編號(hào)子類(lèi)型編號(hào) superTypeId int 11 yes 圖書(shū)父類(lèi)別 subTypeName varchar 50 yes 圖書(shū)子類(lèi)名 表4-8 留言信息表 字段名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 允許空 說(shuō)明 id int 11 no 自動(dòng)編號(hào) title varchar 20 no
38、留言標(biāo)題 author varchar 20 no 留言作者 content longtext no 留言?xún)?nèi)容 imgs varchar 20 yes 留言者頭像 ly_time timestamp 20 no 留言時(shí)間 表4-9 公告表 字段名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 允許空 說(shuō)明 informid int 11 no 自動(dòng)編號(hào) informtitle varchar 30 yes 公告標(biāo)題 informcontent varchar 30 yes 公告內(nèi)容 informtime datetime 0 ye
39、s 公告時(shí)間 第五章 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn) 5.1 用戶(hù)界面設(shè)計(jì)與實(shí)現(xiàn) 5.1.1 首頁(yè)設(shè)計(jì) 為了提高代碼的可重用性,我把用戶(hù)界面相同的部分即頭部、右部和底部作為獨(dú)立的模塊,每個(gè)呈現(xiàn)出來(lái)的頁(yè)面只需通過(guò)include調(diào)用即可。 頭部主要包括菜單和一個(gè)可以搜索圖書(shū)的文本框,當(dāng)然那個(gè)搜索又是鏈接到另一個(gè)頁(yè)面,而菜單部分主要是一系列的超鏈接,在用戶(hù)未登陸時(shí),顯示“登陸/注冊(cè)”,登陸后,顯示為當(dāng)前用戶(hù)名。 而右部主要為書(shū)店介紹以及書(shū)店現(xiàn)有書(shū)籍的分類(lèi)信息,點(diǎn)擊不同的類(lèi)別時(shí),中間的左半部分呈現(xiàn)的書(shū)籍不一樣。 底部主要為一些有關(guān)本網(wǎng)站的超鏈接,可以快速的回到網(wǎng)站首頁(yè),了解本書(shū)店
40、的信息等等。 效果圖如下: 圖5-1 網(wǎng)站首頁(yè)界面 5.2 用戶(hù)模塊 5.2.1 用戶(hù)注冊(cè) 用戶(hù)在登錄前點(diǎn)擊“注冊(cè)”即可跳轉(zhuǎn)到注冊(cè)頁(yè)面。 圖5-2 用戶(hù)注冊(cè)界面 表單校驗(yàn): 用戶(hù)名:不能為空,由英文字母、數(shù)字或下劃線(xiàn)(6-16)字符組成,且不能以數(shù)字開(kāi)頭,不能是已注冊(cè)的。 密碼:不能為空,由英文字母和數(shù)字(6-16)字符組成。 確認(rèn)密碼:不能為空且和需和之前輸入的密碼一樣。 電子郵件:不能為空,有一定的格式,必須包含@和. 真實(shí)姓名:不能為空。 性別:由單選按鈕提供選擇 出生日期:可以為空 地址:不能為空 郵政編碼:可以為空 固定電話(huà):可以為
41、空 移動(dòng)電話(huà):不能為空,有固定格式 驗(yàn)證碼:不能為空 以上文本框中的固定格式均是由不同的正則文法來(lái)規(guī)定的,以免用戶(hù)胡亂輸入。檢驗(yàn)檢驗(yàn)輸入的信息是否規(guī)范的代碼如下: 檢查密碼輸入是否符合規(guī)范: function checkPassword(){ //定義變量 password1為整個(gè)JSP文檔中獲取id為password1的元素 var password1 = document.getElementById("password1"); var pwdRemind = document.getElementById("pwdRemind"); //定義密碼的的格式,用
42、正則表達(dá)式 var patrn=/^[a-z,A-Z,0-9]{6,15}$/; //此正則表達(dá)式的意思為:可以英文字母,不分大小寫(xiě)或數(shù)字開(kāi)頭,長(zhǎng)度為6-15 if (!patrn.exec(password1.value)){ //匹配密碼框中的值是否符合規(guī)范 pwdRemind.style.color="red"; //將密碼框后的文本行的顏色設(shè)置為紅色 pwdRemind.innerHTML="密碼格式輸入有誤!"; //替換id為pwdRemind的開(kāi)始標(biāo)簽與結(jié)束標(biāo)簽之間的內(nèi)容 return false; }else{ pwd
43、Remind.style.color="green"; pwdRemind.innerHTML="√ 輸入正確"; return true;} 5.2.2 用戶(hù)登錄 用戶(hù)登陸后,主頁(yè)面顯示當(dāng)前用戶(hù)名,已經(jīng)登陸的不能夠再次登錄,必須先注銷(xiāo)(退出)才能再次登錄。點(diǎn)擊返回時(shí)會(huì)取消登錄跳轉(zhuǎn)到網(wǎng)站首頁(yè)。登錄界面的效果圖如下: 圖5-3 用戶(hù)登錄界面 登錄頁(yè)面的代碼如下:
48、從而避免登陸之后再次登錄的情況。由于每個(gè)頁(yè)面都是由固定的頭部,右部,底部,和變化的左部組成的,所以實(shí)現(xiàn)這項(xiàng)工作變得簡(jiǎn)單,只需將登錄后頁(yè)面的頭部換成顯示當(dāng)前用戶(hù)名的頭部即可。 顯示當(dāng)前用戶(hù)名的代碼如下: //這是Java Servlet中的代碼 String name = request.getParameter("name");//獲取HTTP請(qǐng)求 request.getSession().setAttribute("name", name);//獲取session對(duì)象將name綁定在session上
5.2.3個(gè)人信息管理 5.2.3.1 修改完善個(gè)人資料 圖5-5 用戶(hù)修改資料界面 填入需要輸入的信息,一些有固定格式的必須按格式填寫(xiě)。該頁(yè)面用HTML 完成50、的,這里就不列舉了。 5.2.3.2修改密碼 沒(méi)有登錄時(shí)不可以修改密碼,登陸后才可以修改密碼。效果圖如下: 圖5-6 用戶(hù)修改密碼界面 表單校驗(yàn): 舊密碼必須輸入正確,新密碼必須按照規(guī)定的格式。 5.2.3.3購(gòu)物車(chē)管理 添加到購(gòu)物車(chē)當(dāng)中的商品的數(shù)據(jù)會(huì)通過(guò)數(shù)據(jù)庫(kù)來(lái)保存,不會(huì)因?yàn)榉钦5牟僮鞫鴮?dǎo)致購(gòu)物車(chē)中的商品被刪除或發(fā)生數(shù)量上的改變。 添加書(shū)籍到購(gòu)物車(chē): 查看某本書(shū)的詳細(xì)信息,在書(shū)籍詳細(xì)信息點(diǎn)擊“order”就可以把書(shū)籍添加到購(gòu)物車(chē)中,并且跳轉(zhuǎn)到購(gòu)物車(chē)列表所在頁(yè)面,同時(shí),頁(yè)面右部購(gòu)物車(chē)中的數(shù)量和價(jià)格會(huì)改變。點(diǎn)擊查看我的購(gòu)物車(chē)時(shí),就可以看到成功添加到購(gòu)物車(chē)中的商品,效果圖
51、如下: 圖5-7 查看我的購(gòu)物車(chē)界面 上面呈現(xiàn)的列表由servlet動(dòng)態(tài)生成,具體實(shí)現(xiàn)代碼如下:
ISBN | 書(shū)籍名 | 單價(jià) | 數(shù)量 | 總價(jià) |
<%=cartItem.getBook().getISBN()%> | <%=cartItem.getBook().getBookName() %> | <%=cartItem.getBook().getNowPrice()%> | <%=cartItem.getCount()%> | <%=cartItem.getItemPrice() %> |
書(shū)籍名稱(chēng) | ${book.bookName} | |||
ISBN | ${book.ISBN} | |||
頁(yè)數(shù) | ${book.pages} | |||
作者 | ${book.author} | |||
出版社 | ${book.publisher} | |||
原價(jià) | ${book.price} | |||
現(xiàn)價(jià) | < td>${book.now
65、
- 溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《光的折射》課件-(公開(kāi)課獲獎(jiǎng))2022年滬科版物理-
- UV油墨的基礎(chǔ)知識(shí)課件
- 藍(lán)色簡(jiǎn)約后備護(hù)士長(zhǎng)競(jìng)聘動(dòng)態(tài)課件
- 藍(lán)色清新筆記本翻頁(yè)年終總結(jié)模板課件
- 81二元一次方程組課件(人教版七年級(jí)下)
- 局部解剖學(xué)-頭部-蝶鞍區(qū)、海綿竇、硬腦膜
- 7273第1課時(shí) 位似圖形及作圖
- 供應(yīng)鏈管理-PPT
- 幼兒園管理過(guò)程
- 4索溪谷的“野”2
- 外科補(bǔ)液注意問(wèn)題
- 組織行為學(xué)--價(jià)值觀(guān)與態(tài)度
- 燈光教學(xué)課件1
- 中原城市春季車(chē)展招商方案
- 祛痰劑醫(yī)學(xué)知識(shí)專(zhuān)家講座