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