版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、存檔日期:存檔日期: 存檔編號(hào):存檔編號(hào): 論論 文文 題題 目:目: 網(wǎng)上購書系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 學(xué)學(xué) 號(hào):號(hào): 姓姓 名:名: 學(xué)學(xué) 院:院: 專專 業(yè):業(yè): 年年 級(jí)級(jí) 、 班班 級(jí)級(jí): 指指 導(dǎo)導(dǎo) 教教 師:師: 網(wǎng)上購書系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘 要:隨著互聯(lián)網(wǎng)科技越來越融入人們的生活,網(wǎng)上購物越來越受到人們的青睞,而書籍是人類進(jìn)步的階梯,我們的生命中永遠(yuǎn)不能缺少書籍,一個(gè)高效的、操作簡單的、界面優(yōu)美、網(wǎng)上的購書系統(tǒng)是必不可少的,筆者開發(fā)的網(wǎng)上購書系統(tǒng)從生活的便捷性出發(fā),方便了我們的日常生活。此系統(tǒng)以 MyEclipse 為平臺(tái),采用了 B/S 系統(tǒng)結(jié)構(gòu)模式,數(shù)據(jù)庫采用的 MySQL,此系統(tǒng)包
2、含一個(gè)網(wǎng)上書店系統(tǒng)所應(yīng)該包含的功能,根據(jù)系統(tǒng)的使用劃分為管理員和普通用戶。普通用戶可以進(jìn)行注冊、登錄、查看網(wǎng)頁上所擁有的書籍、發(fā)表評論、購買書籍等功能。管理員可以修改書目、添加書目、添加普通用戶和管理員用戶、刪除評論、添加類、刪除類別。此系統(tǒng)采用 MVC 框架編寫,易于維護(hù),低耦合,本文以網(wǎng)上購書系統(tǒng)的需求分析、詳細(xì)設(shè)計(jì)和實(shí)際開發(fā)為主要線索,給出了網(wǎng)上書店系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)整個(gè)過程。關(guān)鍵詞:Java Web;網(wǎng)上書店;MVC;MySQL;TomcatThe Design and Implementation of Online Bookstore SystemAbstract: While th
3、e Internet technology is being more and more integrated into peoples lives, people increasingly prefer to online shopping. Besides, books are the ladder of human progress. It is obvious that our lives can never missing books and an efficient, simple and elegant Online Book Ordering System, which can
4、 greatly improve our daily lives.This system is based on MyEclipse, B/S system structure model and the database used by this system is MySQL. Although I have studied the requirements of Online Bookstore System for only half a year, all practical functions have been included by the sytsem. Users can
5、be devided into administrators and normal users. Normal uses can register system, log in system and check all the books in the system, as well as add a comment and buy books. Administrator can change and add books into booklist, add a regular user and administrators, delete comments, add and delete
6、categories. This system is written in the structure of MVC, whose structure is easy to figure our and maintain. Based on the online bookstore system requirements analysis, detailed design and the actual development as the main clue, online bookstore system given in the design and implementation of t
7、he whole process.Keywords: Java Web; Online Bookstore; MVC; MySQL; Tomcat目目 錄錄第一章第一章 緒論緒論.11.1 課題背景.11.2 系統(tǒng)開發(fā)關(guān)鍵技術(shù)介紹.11.3 開發(fā)工具簡介.21.3.1 MyEclipse .21.3.2 MySQL.21.4 本文研究內(nèi)容及主要貢獻(xiàn).2第第 2 章章 需求分析需求分析.32.1 可行性研究.32.1.1 經(jīng)濟(jì)可行性.32.1.2 操作可行性.32.2 需求分析.32.3 系統(tǒng)功能目標(biāo).32.4 本章小結(jié).4第第 3 章章 系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì).53.1 總體設(shè)計(jì).53.1.1 設(shè)計(jì)
8、思想.53.1.2 體系結(jié)構(gòu).53.1.3 軟件結(jié)構(gòu).53.2 詳細(xì)設(shè)計(jì).63.2.1 用戶登錄模塊.63.2.2 密碼修改模塊。.73.2.3 書目添加提交模塊.83.2.4 添加賬號(hào)模塊.83.3 數(shù)據(jù)庫設(shè)計(jì).93.3.1 E-R圖.93.3.2 數(shù)據(jù)表結(jié)構(gòu).103.4 本章小結(jié).12第第 4 章章 系統(tǒng)實(shí)現(xiàn)與測試系統(tǒng)實(shí)現(xiàn)與測試.134.1 編碼實(shí)現(xiàn).134.11 用戶模塊.144.3 本章小結(jié).27第第 5 5 章章 總結(jié)與展望總結(jié)與展望.285.1 總結(jié).285.2 展望.28畢業(yè)設(shè)計(jì)體會(huì)畢業(yè)設(shè)計(jì)體會(huì).29致謝致謝.30參考文獻(xiàn)參考文獻(xiàn).31英文翻譯資料英文翻譯資料.32A.英文原文.
9、32B.原文的翻譯 .401第一章第一章 緒論緒論1.1 課題背景課題背景在當(dāng)前的 21 世紀(jì),計(jì)算機(jī)技術(shù)飛速發(fā)展,電子商務(wù)在人們的生活中越來越普及,人們已經(jīng)漸漸的習(xí)慣了 Word 以及 Excel 這些無紙化的辦公軟件。確實(shí),這些辦公軟件相比于以前的賬單有了太多的優(yōu)勢。首先,當(dāng)數(shù)據(jù)量很大的時(shí)候,賬目表難以管理,在堆積成山的紙張中想找到有用的信息也會(huì)讓管理人員十分頭疼,而現(xiàn)代化的辦公軟件不僅僅沒有這些缺點(diǎn),而且不像紙張那樣需要防火,或者稍微受潮就會(huì)字跡不清,而且可以把文件同步到網(wǎng)上1。不僅如此,網(wǎng)上購物也越來越流行,淘寶網(wǎng)由馬云創(chuàng)立,現(xiàn)已做大做強(qiáng),每日銷量更是以億做單位,為什么網(wǎng)上購物會(huì)這么火
10、?首先由于網(wǎng)絡(luò)的發(fā)展,大家都喜歡宅在家里,宅男宅女足不出戶便可以買到自己想要的東西,相比于在街上逛了半天也找不到自己想要的,當(dāng)然是前一種會(huì)更受青睞,而且由于網(wǎng)上的商家并不需要像現(xiàn)實(shí)的店鋪那樣要交水費(fèi)、電費(fèi)、房租,他們當(dāng)然可以把價(jià)格放低,而且他們可以 24 小時(shí)對外出售自己的商品,這種既方便由實(shí)惠的購物方式大受好評,書籍是人類進(jìn)步的階梯,在網(wǎng)上購物深深的改變了人們的生活的同時(shí),人們也越來越習(xí)慣在網(wǎng)上購書。在這個(gè)數(shù)據(jù)大爆炸的時(shí)代,如果不實(shí)時(shí)更新自己的知識(shí)量,自然會(huì)被社會(huì)所淘汰,雖然出現(xiàn)了電子書,但人眼還是更喜歡查看紙質(zhì)書籍,據(jù)有關(guān)專家研究,看紙張會(huì)比看電子的屏幕記得更牢,基于此,我編寫了網(wǎng)上購書系
11、統(tǒng),此系統(tǒng)大大方便了人來生活,因此具有非常重要的現(xiàn)實(shí)意義。1.2 系統(tǒng)開發(fā)關(guān)鍵技術(shù)介紹系統(tǒng)開發(fā)關(guān)鍵技術(shù)介紹本文中使用的是三層構(gòu)架,也就是大名鼎鼎的 MVC 框架,M 是 Model 的縮寫,V 是 View 的縮寫,而 C 是 Control 的縮寫,這種構(gòu)架在網(wǎng)站中使用的尤為廣泛2-5,如圖 1.1 所示。在線圖書操作系統(tǒng)JavaBeans業(yè)務(wù)處理層給出圖書ID查詢圖書信息返回圖書對象數(shù)據(jù)庫數(shù)據(jù)存儲(chǔ)層用SQL語句查詢數(shù)據(jù)庫返回查詢結(jié)果圖 1.1 三層構(gòu)架工作原理圖21.3 開發(fā)工具簡介開發(fā)工具簡介1.3.1 MyEclipseMyEclipse 是一款集成的被程序員廣泛使用的集成開發(fā)工具。但
12、是,它不僅僅是一款代碼實(shí)現(xiàn)工具,他還集成了各種工具,用戶這樣就可以通過使用插件來構(gòu)建自己的想要的開發(fā)環(huán)境。MyEclipse 本身就是 Eclipse 的升級(jí)版,包括很多經(jīng)常要使用的插件6-9。1.3.2 MySQLMySQL 是一款關(guān)系型通用的數(shù)據(jù)庫管理系統(tǒng)。具有速度快、使用免費(fèi)、體積小、開放源碼和總體要求成本低諸多優(yōu)點(diǎn)10-12。MySQL 的系統(tǒng)特性:1. 采用 C、C+編寫,并通過了多種編譯器對其測試,其可移植性已經(jīng)得到保證;2. 支持多種操作系統(tǒng);3. 為大多數(shù)主流編程語言提供 API;4. 使用多線程,能將 CPU 的資源充分利用;5. 提供多種數(shù)據(jù)庫來供用戶連接;6. SQL 查
13、詢算法是經(jīng)過優(yōu)化,查詢速度得到顯著的提高。1.4 本文研究內(nèi)容及主要貢獻(xiàn)本文研究內(nèi)容及主要貢獻(xiàn)網(wǎng)上購書系統(tǒng)功能較多,需要花費(fèi)較長的時(shí)間對其進(jìn)行開發(fā),本文通過 5 大章節(jié)來設(shè)計(jì)開發(fā)一款網(wǎng)上圖書系統(tǒng)。第一章 緒論該章節(jié)通過對課題背景、課題的意義和目的,國內(nèi)外發(fā)展?fàn)顩r以及其發(fā)展趨勢。第二章 需求分析:該章節(jié)對網(wǎng)上書店系統(tǒng)的需求進(jìn)行分析,并通過可行性分析、系統(tǒng)分析、系統(tǒng)功能分析,使得該管理平臺(tái)需求更加清晰、明朗。第三章 系統(tǒng)概要設(shè)計(jì):該章節(jié)分為總體的設(shè)計(jì)、詳細(xì)設(shè)計(jì)和數(shù)據(jù)庫的設(shè)計(jì)三大階段內(nèi)容??傮w設(shè)計(jì)階段通過對需求分析階段得出的系統(tǒng)需求,設(shè)計(jì)出體系結(jié)構(gòu)設(shè)計(jì)和軟件結(jié)構(gòu)設(shè)計(jì),并給出相應(yīng)的系統(tǒng)層次圖。詳細(xì)設(shè)計(jì)
14、階段則對總體設(shè)計(jì)階段劃分出的各大功能模塊進(jìn)行各自的詳細(xì)分析設(shè)計(jì),并通過盒圖(N-S 圖)說明系統(tǒng)流程情況。數(shù)據(jù)庫階段則對數(shù)據(jù)庫進(jìn)行物理及邏輯設(shè)計(jì),并通過實(shí)體-聯(lián)系圖(E-R 圖)和數(shù)據(jù)表加以解釋說明。第四章 系統(tǒng)實(shí)現(xiàn)與測試:該章節(jié)分為編碼、實(shí)現(xiàn)以及測試這三大塊內(nèi)容。編碼部分給出各模塊的關(guān)鍵性代碼,實(shí)現(xiàn)部分則給出各模塊實(shí)際效果,測試部分則通過相應(yīng)的覆蓋測試,對比預(yù)想情況與實(shí)際情況,從而給出相應(yīng)的測試結(jié)果說明。第五章 總結(jié)與展望:這個(gè)章節(jié)主要介紹此設(shè)計(jì)的管理平臺(tái)欠缺之處,并對將來的工作作出規(guī)劃。3第第 2 章章 需求分析需求分析所謂“需求分析”,即是對待解決問題進(jìn)行詳細(xì)的規(guī)劃分析,弄清問題之所在,
15、是軟件工程中一個(gè)關(guān)鍵過程。只有確定了這些需求,才能進(jìn)一步去分析和尋求新系統(tǒng)的解決方案。2.1 可行性研究可行性研究本系統(tǒng)采用 B/S 的結(jié)構(gòu)(Browser-Server)模式,此結(jié)構(gòu)便于系統(tǒng)開發(fā)、維護(hù)、控制,且具有優(yōu)秀的開放性、繼承性以及可擴(kuò)展性。本系統(tǒng)開發(fā)平臺(tái)使用了當(dāng)前較為流行、而且高效的 JSP 技術(shù),后臺(tái)數(shù)據(jù)庫則是使用了 MySQL 進(jìn)行開發(fā),由于 MySQL 具有強(qiáng)大的報(bào)表功能以及豐富多樣的系統(tǒng)接口,使得它的性能和安全性才能夠足夠滿足當(dāng)前系統(tǒng)的需求13-16。2.1.1 經(jīng)濟(jì)可行性經(jīng)濟(jì)可行性成本與效益的分析對比一般來說是經(jīng)濟(jì)可行性中最為重要的分析的內(nèi)容。如果經(jīng)濟(jì)不適用,那么就沒有研究
16、下去的必要了,此網(wǎng)站購書系統(tǒng)花費(fèi)成本相當(dāng)之低。2.1.2 操作可行性操作可行性本平臺(tái)是基于 B/S 架構(gòu),客戶端運(yùn)行在 Web 服務(wù)器上,能夠做到方便出售圖書,易于操作。而且平臺(tái)開發(fā)好之后,其操作完全是可視化的17-20。2.2 需求分析需求分析當(dāng)今社會(huì)人們的物質(zhì)和活動(dòng)日益豐富,而精神的枯竭問題就顯得越來越常見,人們習(xí)慣了大魚大肉,卻不知道迷茫的時(shí)候該去做什么來拯救自己,特別是當(dāng)代的大學(xué)生,被很多人稱為是垮掉的一代,很多開始或火了起來,比如誰的青春不迷茫這本書甚至被拍成的電視劇,諸如此類的還有為什么讀大學(xué)真實(shí)的說明了當(dāng)代人們的精神世界,人們需要古人的智慧,來填補(bǔ)精神的空虛,一本經(jīng)典書籍可以指引
17、人們的方向。2.3 系統(tǒng)功能目標(biāo)系統(tǒng)功能目標(biāo)用戶:1. 用戶的注冊登錄以及注銷;2. 書籍的搜索以及查詢;3. 對書籍的評論;4. 書目的訂單提交。管理員:1. 用戶的添加與刪除;2. 管理員的添加與刪除;3. 用戶和管理員信息的修改;4. 書目種類的添加以及刪除;5. 書目評論的刪除;6. 書目的添加修改和刪除。42.4 本章小結(jié)本章小結(jié)本節(jié)內(nèi)容對該系統(tǒng)的可行性做了科學(xué)分析,驗(yàn)證了其存在的必要性。隨后提出該系統(tǒng)所要達(dá)成的系統(tǒng)目標(biāo)以及系統(tǒng)功能目標(biāo),并給出相應(yīng)的詳細(xì)介紹。為后續(xù)的開發(fā)奠定了良好的保障。5第第 3 章章 系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì)本章節(jié)首先對該平臺(tái)做總體設(shè)計(jì),從設(shè)計(jì)思想、體系結(jié)構(gòu)、軟件結(jié)構(gòu)等
18、方面進(jìn)行說明設(shè)計(jì),通過層次圖來劃分系統(tǒng)模塊。接著再對系統(tǒng)進(jìn)行詳細(xì)設(shè)計(jì),將總體設(shè)計(jì)階段得到的各個(gè)功能模塊再進(jìn)行單獨(dú)設(shè)計(jì),并通過流程圖來說明系統(tǒng)的流程。最后是本系統(tǒng)的數(shù)據(jù)庫的分析設(shè)計(jì),并給出相應(yīng)系統(tǒng)的 E-R 圖和數(shù)據(jù)表結(jié)構(gòu)。3.1 總體設(shè)計(jì)總體設(shè)計(jì)總體設(shè)計(jì)是一個(gè)系統(tǒng)中相當(dāng)重要的部分,如果總體設(shè)計(jì)中出現(xiàn)了問題,后面的工作也沒有辦法如期展開,一個(gè)優(yōu)秀簡明的總體設(shè)計(jì)會(huì)讓整個(gè)設(shè)計(jì)的思路的脈絡(luò)清晰。3.1.1 設(shè)計(jì)思想設(shè)計(jì)思想在逐步開發(fā)系統(tǒng)的時(shí)候一個(gè)優(yōu)秀的設(shè)計(jì)思想是必不可少的,本系統(tǒng)的設(shè)計(jì)思想如下所示:1. 將系統(tǒng)分為多個(gè)不同的獨(dú)立模塊,其中模塊的劃分根據(jù)每個(gè)群體在這個(gè)軟件工程中所對應(yīng)的身份,并分別給出各
19、個(gè)模塊的功能。2. 采用分層的模塊化程序的傳統(tǒng)設(shè)計(jì)理念,將模塊化的設(shè)計(jì)理念貫穿了整個(gè)系統(tǒng)。3. 模塊間已“低耦合,高內(nèi)聚”為目標(biāo),真正合理的設(shè)計(jì)模塊之間的依賴程度。3.1.2 體系結(jié)構(gòu)體系結(jié)構(gòu)一個(gè)軟件的系統(tǒng)的基本的框架取決于軟件的體系的結(jié)構(gòu),是每一個(gè)系統(tǒng)的最為根本性的東西。為了能夠讓本系統(tǒng)具有一定的健壯性,且具有高度的高效性及穩(wěn)定性,本系統(tǒng)的體系結(jié)構(gòu)為 B/S 結(jié)構(gòu),B/S 結(jié)構(gòu)圖如圖 3.1 所示??蛻魴C(jī)瀏覽器Web服務(wù)器數(shù)據(jù)庫Http請求Http響應(yīng)查詢數(shù)據(jù)記錄圖 3.1 B/S 工作結(jié)構(gòu)3.1.3 軟件結(jié)構(gòu)軟件結(jié)構(gòu)本系統(tǒng)共有兩大模塊:用戶模塊、和管理員模塊。其中用戶扮演的是前臺(tái)功能模塊,
20、而管理員則意味著后臺(tái)管理模塊。前臺(tái)功能模塊包括:1. 查看分類;2. 發(fā)表評論;3. 添加訂單;4. 用戶注冊。后臺(tái)功能模塊包括:1. 用戶的管理刪除以及添加;2. 種類的添加以及刪除;3. 書目的添加以及刪除;64. 評論的刪除。本系統(tǒng)主要的層次圖如圖 3.2 所示。系統(tǒng)用戶管理員搜索書籍查看分類發(fā)表評論添加訂單用戶注冊書目的添加以及刪除種類的添加以及刪除評論的刪除用戶管理圖 3.2 網(wǎng)上書店系統(tǒng)層次圖3.2 詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì)網(wǎng)上購書系統(tǒng)又可以劃分為用戶登錄模塊、密碼修改模塊、書目添加提交模塊、添加賬號(hào)模塊。3.2.1 用戶登錄模塊用戶登錄模塊一個(gè)網(wǎng)上購書系統(tǒng)每一個(gè)人都會(huì)有一個(gè)各自對應(yīng)的 I
21、D,用戶想要買書,首先要進(jìn)行用戶的驗(yàn)證,驗(yàn)證的流程圖如圖 3.3 所示。7主頁面用戶登錄判斷普通用戶管理員Yes登錄失敗No圖 3.3 用戶登錄圖3.2.2 密碼修改模塊密碼修改模塊當(dāng)用戶發(fā)現(xiàn)自己的用戶密碼太薄弱或者不容易記住,這個(gè)時(shí)候他們可以去修改密碼,修改密碼的流程圖如圖 3.4 所示。主頁面用戶登錄判斷重新登錄修改密碼密碼錯(cuò)誤No登錄成功Yes圖 3.4 密碼修改圖3.2.3 書目添加提交模塊書目添加提交模塊功能描述:管理員可以上傳書籍以供銷售,提交的內(nèi)容包括種類、名字、價(jià)格、簡介和封面,如圖 3.5 所示。8用戶登錄判定管理員選中添加書目模塊輸入書目信息添加成功普通用戶Yes退出退出重
22、新登錄No圖 3.5 說明書提交流程圖3.2.4 添加賬號(hào)模塊添加賬號(hào)模塊功能描述:一共可以添加兩種類別的用戶,一個(gè)是添加管理員身份,一個(gè)是普通的成員,如圖 3.6 所示。主頁面登錄判定管理員添加管理員添加普通用戶YesNo圖 3.6 添加用戶圖3.3 數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫設(shè)計(jì)本系統(tǒng)中的所有操作都是圍繞數(shù)據(jù)來進(jìn)行的,如果數(shù)據(jù)庫設(shè)計(jì)的不合理,會(huì)讓整9個(gè)程序的效率大打折扣。3.3.1 E-R 圖圖E-R 圖在一個(gè)設(shè)計(jì)報(bào)告占著舉重輕重的重要,通過 E-R 圖可以更輕易的分析出整個(gè)程序的流程。1. 用戶 E-R 圖用戶是整個(gè)系統(tǒng)中最重要的成員,一個(gè)優(yōu)秀的系統(tǒng)應(yīng)該充分考慮到用戶的需求以及用戶的偏好,如圖 3
23、.7 所示。用戶地址性別用戶名真實(shí)姓名密碼電話郵箱3.7 用戶 E-R 圖2. 管理員 E-R 圖在一個(gè)完備的系統(tǒng)中,管理員 E-R 圖是必不可少的,在本系統(tǒng)中管理員可以執(zhí)行添加成員、刪除書籍、刪除評論等功能,如圖 3.8 所示。地址性別用戶名密碼電話管理員圖 3.8 管理員 E-R 圖3. 圖書 E-R 圖網(wǎng)上購書系統(tǒng)一個(gè)不可或缺的元素就是圖書,圖書的信息一定要完備,這樣用戶這樣更好的去了解這本書的信息,如圖 3.9 所示。10圖書簡介編號(hào)價(jià)格名字封面圖 3.9 圖書 E-R 圖4. 用戶類型 E-R 圖在本系統(tǒng)中一共有兩種用戶類型,一種是普通的用戶,還有一種是管理員,如圖3.10 所示。管
24、理員用戶類型用戶管理員類型圖 3.10 用戶類型 E-R 圖3.3.2 數(shù)據(jù)表結(jié)構(gòu)數(shù)據(jù)表結(jié)構(gòu)在本系統(tǒng)中用到了很多的表,主要是來存儲(chǔ)用戶的信息和圖書的信息,下面一一列舉了在數(shù)據(jù)庫中出現(xiàn)的表格,包括他們的屬性。1. 用戶訂單表用戶訂單表主要的記錄了用戶訂單的信息,可以方便用戶對已購買的書籍進(jìn)行查看,如表 3.1 所示。表 3.1 用戶訂單表Bill_idUsernameTruenameAddressTelEmailCost1Mr.zhang張雷江蘇師范大學(xué)23.62xiaotian王子清江蘇師范大學(xué)12.43lisa周岳江蘇師范大學(xué)77.4112. 圖書信息表表圖書信息表對圖書的信息進(jìn)行了描述,如
25、表 3.2 所示。表 3.2 圖書信息表Book_idBook_nameBook_descbasepriceCategory_idwriterpublisherpagesAmountimages1紅樓夢滿紙荒唐言,一把辛酸淚!213曹雪芹長春出版社89815image/book3_1.jpg2好性格決定好未來細(xì)節(jié)決定成敗233江暉中國輕工業(yè)出版社2362image/book5_1.jpg3. 圖書種類表在本系統(tǒng)中圖書一共有 5 個(gè)種類,如表 3.3 所示。表 3.3 圖書種類表Category_idCategory_name1科技2管理3教育4人文社科5生活6文藝4. 評論表評論在本購書系統(tǒng)是
26、相對的重要的一項(xiàng),評論可以為用戶提供參照,來判斷這本書的優(yōu)良與否,如表 3.4 所示。表 3.4 評論表Comment_idComment_descComment_dateBook_idUser_id1贊!好書!2015-04-21 14:48:171222如沐春風(fēng)2015-04-22 17:29:262345. 用戶資料表用戶資料表存放這關(guān)于用戶的信息,如表 3.5 所示。表 3.5 用戶資料表UsernameFlagUser_genderTruenameAddressTelEmailXiaoming1男張雷江蘇師范大學(xué)Lili2女王芳江蘇師范大學(xué)3.4 本章小結(jié)本章小結(jié)本章節(jié)從總體設(shè)計(jì)以至
27、詳細(xì)設(shè)計(jì)再到數(shù)據(jù)庫的設(shè)計(jì)逐一進(jìn)行,而且同時(shí)在各個(gè)階段給出了對應(yīng)的層次圖,流程圖以及相應(yīng) E-R 圖等,并且進(jìn)行了詳細(xì)的說明和解釋,為下一步的工作做出了準(zhǔn)備。12第第 4 章章 系統(tǒng)實(shí)現(xiàn)與測試系統(tǒng)實(shí)現(xiàn)與測試4.1 編碼實(shí)現(xiàn)編碼實(shí)現(xiàn)代碼是一個(gè)項(xiàng)目里不可或缺的一部分,在下面,會(huì)展示程序中代碼和效果圖, Login.jsp 頁面是本系統(tǒng)登錄的主頁面,該系統(tǒng)的任何角色在進(jìn)行登錄時(shí),都是在此界面下完成登錄的,Login.jsp 關(guān)鍵代碼如下。 13Login.jsp 截圖如圖 4.1 所示。圖 4.1 Login.jsp 頁面截圖4.1.1 用戶模塊用戶模塊1. 工作人員登錄模塊登錄模塊是程序中相對重要的
28、部分,其關(guān)鍵代碼如下所示。 江蘇師范大學(xué)網(wǎng)上書店,Your best Choice! 用戶名: 14 密碼: !- - 頁面截圖如圖 4.2 所示。圖 4.2 用戶登錄頁面截圖2. 用戶注冊模塊每個(gè)用戶都會(huì)擁有一個(gè)自己的賬號(hào),以方便購買,如圖 4.3 所示。圖 4.3 用戶注冊模塊15下面是用戶注冊模塊的代碼。document.getElementById(getresult).innerText=用戶名不能為空;function request_send()http_request=false; if(window.XMLHttpRequest) http_request=new XMLHt
29、tpRequest(); /非 IE 瀏覽器 else if(window.ActiveXObject);/IE 瀏覽器 try http_request=new ActiveXObject(Msxml2.HTTP); catch(e) try http_request=new ActiveXObject(Microsoft.HTTP); catch(e) else alert(你的瀏覽器不支持 Ajax); return false; http_request.onreadystatechange=checkName;/設(shè)置回調(diào)函數(shù) http_request.open(get,UpdateS
30、ervlet?username=+document.getElementById(username).value,true); / alert(ok); http_request.send(); return true; function checkName() if(http_request.readyState=4)/接收結(jié)果完畢 if(http_request.status=200)/狀態(tài)正常 document.getElementById(getresult).innerText=http_request.responseText; / alert(document.getElemen
31、tById(getresult).value) ; function isEmail(strEmail) if(strEmail!=) if (strEmail.search(/w+(-w+)|(.w+)*A-Za-z0-9+(.|-)A-Za-z0-9+)*.A-Za-z0-9+$/) != -1) document.getElementById(Emaild).innerText=; return true; 16 else alert(oh!郵箱格式不正確!); document.getElementById(Emaild).innerText=郵箱格式錯(cuò)誤; /document.for
32、m1.Email.focus(); return false; else document.getElementById(Emaild).innerText=; return true; function checkPass() if(form2.Password.value=) alert(密碼不能為空!); document.getElementById(passd1).innerText=密碼不能為空; document.form2.Password.focus(); return false; else if(form2.Password.value!=form2.Password1.
33、value) alert(密碼輸入不一致!); return false ; else document.getElementById(passd1).innerText=; return true; function checkPassword() if(form2.Password.value!=form2.Password1.value) alert(密碼輸入不一致!); document.getElementById(passd).innerText=密碼不一致; / document.form1.Password1.focus(); return false; else if(doc
34、ument.getElementById(passd).innerText!=null) document.getElementById(passd).innerText=; return true; function checkname() if(document.all(User_name).value=) alert(用戶名不能為空!);17 document.getElementById(getresult).innerText=用戶名不能為空; /document.form1.User_name.focus(); return false; else document.getElem
35、entById(getresult).innerText=; request_send(); return true; function isName(strname) if(strname=) alert(姓名不可以為空!); return false; return true; function isNumber(name) /數(shù)值檢測 var i;if(name.length11)alert(電話號(hào)碼長度不對!) document.getElementById(Teld).innerText=電話號(hào)碼不能為空;return false;return true;for(i = 0; i n
36、ame.length; i+) if(name.charAt(i)9)alert(電話號(hào)碼不合格!); document.getElementById(Teld).innerText=您的電話號(hào)碼不合格; document.form1.Tel.focus(); return false; else document.getElementById(Teld).innerText=; return true; function checkForm() if(!checkname()|!checkPass()|!isName(form2.Turename.value)|!isNumber(form2
37、.Tel.value)|!isEmail(form2.Email.value) /alert(您提交的信息有錯(cuò)誤!); return false; alert(恭喜您!注冊成功!);18 document.form2.submit(); return true; 歡迎來到江蘇師范大學(xué)網(wǎng)上書店! 用戶注冊 請輸入用戶名 : (32 個(gè)字符) 用戶密碼 : (必填) 請?jiān)俅屋斎朊艽a : (必填) 請選擇性別 : 男19 女 (可選填) 請輸入真實(shí)姓名 : (必填)
38、請輸入您的地址 : (必填) 請輸入您的電話號(hào)碼: (必填) 請輸入您的郵箱地址: (可選填) 3. 用戶登錄成功之后的界面,如圖 4.4 所示。20圖 4.4 登錄成功的頁面下面是這部分的代碼。 歡迎您!管理員 4. 書籍類別頁面在本系統(tǒng)中書籍一共分為五種類別,管理員還可以添加和刪除類別,以方便書籍的管理,它的頁面所圖 4.5 所示。21圖 4.5 圖書類別界面下面是這部分的代碼。 public class ShowleibieServlet extends HttpServlet public void doGet(HttpServletRequest request, Http
39、ServletResponse response)throws ServletException, IOException / request.getContentType(text/html);response.setContentType(text/html);request.setCharacterEncoding(utf-8);response.setCharacterEncoding(utf-8);PrintWriter out = response.getWriter();/得到要顯示的類別的 Category_idString Category_id=request.getPar
40、ameter(id);String s_pageNow=request.getParameter(pageNow);/String keyWord=request.getParameter(keyWord);String keyWord=null;if(Category_id=null)keyWord=new String(request.getParameter(keyWord).getBytes(iso-8859-1),utf-8);int pageNow;int pageCount=0;if(s_pageNow=null)pageNow=1;elsepageNow=Integer.par
41、seInt(s_pageNow);22int pageSize=6;leibieBO lbb=new leibieBO(); List ls1= new ArrayList(); if(Category_id!=null) pageCount=lbb.getPageCount(Category_id,pageSize); ls1=lbb.getleibieBean(Category_id,pageSize,pageNow); else pageCount=lbb.getPageCountByKeyWord(keyWord, pageSize); ls1=lbb.getGoodsBeanByKe
42、yWord(keyWord, pageSize, pageNow); request.setAttribute(pageCount,pageCount+); request.setAttribute(pageNow,pageNow+);/把 ls1 放入 request 中request.setAttribute(leibie,ls1);request.getRequestDispatcher(leibie.jsp).forward(request, response); public void doPost(HttpServletRequest request, HttpServletRes
43、ponse response)throws ServletException, IOException this.doGet(request, response);5. 訂單界面圖 4.6 訂單界面訂單界面的代碼。function delAllBook()window.open(ShoppingCLServlet?type=delAllBook,_self);23 購物流程 編號(hào) 名稱 單價(jià) 數(shù)量 % ArrayList al=(ArrayList)request.getAttribute(arraylist); for(GoodsBean gb:al) % input name=Book_i
44、d type=hidden size=7 value= /input name=newNum type=text size=7 value= / a href=ShoppingCLServlet?type=delBook&Book_id=刪除 a href=ShoppingCLServlet?type=showdetail&Book_id=查看 24 您共選擇了價(jià)值¥的商品 下一步 您還沒有選擇任何書籍!點(diǎn)此進(jìn)入購物大廳 6. 支付界面25圖 4.7 支付界面下面是支付界面的代碼。 購物流程 訂單詳細(xì)信
45、息 訂單號(hào) 收貨人 收貨地址 電話 總價(jià) 電子郵件 26 貨到付款 % % 您的訂單已經(jīng)完成,服務(wù)器將稍后向您電子郵箱發(fā)送確認(rèn)信息,并確認(rèn)訂單信息。 4.3 本章小結(jié)本章小結(jié)這個(gè)章節(jié)主要的目的是展示本系統(tǒng)的主要操作的圖片和代碼,通過這一章可以理清整個(gè)程序的思路,使整個(gè)報(bào)告的脈絡(luò)更加清楚。27第第 5 5 章章 總結(jié)與展望總結(jié)與展望5.1 總結(jié)總結(jié)在當(dāng)今的圖書軟件中,網(wǎng)上圖書系統(tǒng)能夠更好更方便的是用戶購買書籍,使文化生活得到提高。對于本系統(tǒng),本文主要是做了下列幾點(diǎn)的研究:1. 系統(tǒng)概述說明:通過對該課題背景,系統(tǒng)概述,課題的目的與意義,以及國內(nèi)外對該課題的研究現(xiàn)狀及其發(fā)展趨勢等方面
46、的說明,對本系統(tǒng)的開發(fā)的可能性進(jìn)行調(diào)研及概述。2. 系統(tǒng)需求分析:對該課題的可行性進(jìn)行分析研究,其中可行性包括經(jīng)濟(jì)可行性,操作可行性兩大方面,同時(shí)對該系統(tǒng)的系統(tǒng)目標(biāo),對系統(tǒng)功能的目標(biāo)來進(jìn)行詳細(xì)的分析,并且給出了各個(gè)模塊相應(yīng)的功能,促使本系統(tǒng)的需求更加清晰以及明確。3. 系統(tǒng)設(shè)計(jì):這個(gè)文章對該系統(tǒng)進(jìn)行了總體的設(shè)計(jì)、詳細(xì)的設(shè)計(jì)以及數(shù)據(jù)庫設(shè)計(jì)這三部分設(shè)計(jì)的階段,明確給出了網(wǎng)上書店系統(tǒng)的結(jié)構(gòu)框架。而在總體設(shè)計(jì)的階段,給出了本平臺(tái)的總體的層次圖;最后在詳細(xì)的設(shè)計(jì)階段,我又分別給出了主要子功能模塊對應(yīng)的流程圖;在數(shù)據(jù)庫設(shè)計(jì)的階段,給出了各實(shí)體的元素的 E-R 圖并且對數(shù)據(jù)表的結(jié)構(gòu)進(jìn)行了分析。4. 系統(tǒng)實(shí)現(xiàn)
47、:通過編碼來實(shí)現(xiàn)本平臺(tái)的具體功能需求,在編碼期間進(jìn)行了單元測試,發(fā)現(xiàn)并改正程序中存在的錯(cuò)誤;在整個(gè)系統(tǒng)編碼開發(fā)完成之后,再對整個(gè)系統(tǒng)平臺(tái)進(jìn)行了相關(guān)的系統(tǒng)測試,徹底消除了本系統(tǒng)殘余的漏洞,確保了本系統(tǒng)的健壯性。5.2 展望展望其實(shí)這個(gè)設(shè)計(jì)還有很多不全面的地方,比如布局很丑陋,對工作人員的任務(wù)具體分工是不明確的,不可以將各個(gè)階段對應(yīng)的任務(wù)對應(yīng)到自己其相應(yīng)的用戶,背景圖片也沒有找到合適的,有很多功能上還有漏洞,比如賬單的刪除,評論可以使用的時(shí)機(jī),還有一大堆的問題,鑒于時(shí)間關(guān)系,只能到這里了,但我絕不會(huì)就此停步,在將來,我會(huì)一點(diǎn)一點(diǎn)完善和修葺這個(gè)項(xiàng)目。此外,在提高網(wǎng)上書店系統(tǒng)的保密性問題上,就像確保用
48、戶的信息不可以竊取以及管理員提交書籍圖片的安全性方面也是本網(wǎng)站需要的方向,使該系統(tǒng)在安全性的方面更進(jìn)一步。28畢業(yè)設(shè)計(jì)體會(huì)畢業(yè)設(shè)計(jì)體會(huì)雖然很辛苦,但是真的學(xué)到了很多的東西,中間歷經(jīng)波折,但是也正是這曲折的過程,我體會(huì)到了做一個(gè)完整系統(tǒng)的不易。這是對我大學(xué)四年學(xué)習(xí)成果的檢驗(yàn),也是對我自身自學(xué)能力的評估。從選題到需求調(diào)查分析,再到各系統(tǒng)功能模塊的逐一實(shí)現(xiàn),不得不說,一個(gè)切實(shí)可用系統(tǒng)開發(fā)的每一步都是不可馬虎的。一開始選畢業(yè)設(shè)計(jì)題目時(shí),我雖然選了網(wǎng)上書店系統(tǒng),卻對該系統(tǒng)功能模塊、實(shí)現(xiàn)原理毫無頭緒,后來我從同學(xué)王維那拷來了關(guān)于 Java Web 的視頻,我每當(dāng)遇到不懂的地方就去請教同學(xué),后來我加了很多群
49、組,比如 Jsoup 群組、JavaScript 群組、MySQL 群組諸如此類,這些群里面有很多厲害的人們,他們都很熱情,愿意幫助那些在技術(shù)上有問題的人,每當(dāng)我有不會(huì)的地方,我會(huì)到群里提問,他們都很熱情的幫我解答一些我不會(huì)的問題,真是人外有人,天外有天。除了這些編程高手的幫助,我還學(xué)會(huì)了借助圖書館這一傳統(tǒng)資源庫。仔細(xì)計(jì)算,幾乎從我下定決心認(rèn)真做畢業(yè)設(shè)計(jì)的第一天開始,一直到今天,中間的兩個(gè)月我一直都在圖書館里尋找相關(guān)書籍并閱讀了大量代碼編寫方面的書籍??傊@兩個(gè)月的學(xué)習(xí),令我自身的編程能力大幅度提高,也慢慢培養(yǎng)出了自己搜索資料學(xué)習(xí)的興趣。以后的學(xué)習(xí)生活里,我會(huì)繼續(xù)努力提升自己的專業(yè)素養(yǎng)。29
50、致謝致謝歷時(shí)兩個(gè)月的時(shí)間我終于完成了設(shè)計(jì),當(dāng)我完成的時(shí)候真的有種喜極而泣的沖動(dòng),畢竟一開始我并不喜歡計(jì)算機(jī)這個(gè)專業(yè),我覺得這個(gè)專業(yè)既枯燥又無聊,而且整天對著電腦,對身體也不好,可是,因?yàn)檫@次的畢業(yè)設(shè)計(jì)我真的徹底愛上這個(gè)專業(yè),它很神奇,可以讓我發(fā)揮我的想象,改造人類世界。首先我想感謝王副教授,他在我做項(xiàng)目的過程給予了我無私的幫助,還有我們院的董院長,以及很多老師,在我困惑的時(shí)候都指點(diǎn)了我,還有我要感謝我的同學(xué)們,在我不想做項(xiàng)目的時(shí)候。他們鼓勵(lì)我,支持我,幫助我,讓我走過了迷茫的黑暗,完成了這次設(shè)計(jì)。如果我的作品中有什么不足的或者缺陷,我希望諸位可以幫我指正。30參考文獻(xiàn)1 Anonymous.
51、MySQL AB; MySQL Continues to Be the Database of Choice for Web2.0 Companies J. Computer Weekly News, 2008.2 Li Layuan.Li Chunlin.The Qos routing algorithm for ATM networks. Computer Communications. 2001.3 Ed Roman, Rickard Oberg. The Technical Benefits of EJB and J2EE Technologies COM+ and Windows D
52、NA. 1999.4Wahl M, Howes T, S Kille.Lightweight Directory Access Protocol (v3). 1997.5 A. S. Shevlyakov. Some Aspects of Using JSP Technology for Distance LearningTasks J. Journal of Mathematical Sciences, 2001, 10(10): 5-15.6 Isabel Torre-Dez, Mriam Antn-Rodrguez, Francisco Javier Daz-Pernas, Freddy
53、 Jos Perozo-Rondn. Comparison of Response Times of a Mobile-Web EHRs System Using PHP and JSP Languages J. Journal of Medical Systems, 2012, 366.7 Chien-HungLiu.Data flow analysis and testing of JSP-based Web applications J. Information and Software Technology, 2006, 48 12.8 Anonymous. Sun Micro sys
54、tems, Inc; Sun Micro systems Announces Agreement to Acquire MySQL, Developr of the Worlds Most Popular Open Source Database J. Computer Technology Journal, 2008.9 Michael Blaha, James Rumbaugh 編著, UML 面向?qū)ο蠼Ec設(shè)計(jì)(第 2 版) M. 北京: 人民郵電出版社,2011.10 英薩默維爾編著,軟件工程(第 9 版) M. 北京: 機(jī)械工業(yè)出版社,2011.11 張向宏主編, 軟件生命周期質(zhì)量保
55、證與測試 M. 北京: 電子工業(yè)出版社,2009.12 張永常主編, Java 程序設(shè)計(jì)實(shí)用教程(第 2 版) M. 北京: 電子工業(yè)出版社,2009.13 薛福亮編著, JAVA 面向?qū)ο蟪绦蛟O(shè)計(jì)與 Web 開發(fā) M. 北京: 清華大學(xué)出版社,2014.14 Ben Forta 編著, MySQL 必知必會(huì) M. 北京: 人民郵電出版社,2009 年15 Bruce Eckel 著, 陳昊鵬 饒若楠等譯.JAVA 編程思想 M. 北京: 機(jī)械工業(yè)出版社,2008.16 Dejan sunderic 等著. SQL server 2000 高級(jí)編程技術(shù) M. 北京: 清華大學(xué)出版社,2002.
56、17 耿祥義編著, JSP 基礎(chǔ)編程 M. 北京: 清華大學(xué)出版社,2008.18 BruceEckel. Java 編程思想 M. 北京: 機(jī)械工業(yè)出版社,2009.19 FLANAGAN. Java 技術(shù)手冊 M. 北京: 中國電力出版社,2008.20 孫涌.現(xiàn)代軟件工程 M. 北京: 北京希望電子出版社,2006.31英文翻譯資料英文翻譯資料A.英文原文Thinking in JavaPolymorphism is the third essential feature of an object-oriented programming language, after data abs
57、traction and inheritance. It provides another dimension of separation of interface from implementation, to decouple what from how. Polymorphism allows improved code organization and readability as well as the creation of extensible programs that can be “grown” not only during the original creation o
58、f the project, but also when new features are desired.Encapsulation creates new data types by combining characteristics and behaviors. Implementation hiding separates the interface from the implementation by making the details private. This sort of mechanical organization makes ready sense to someon
59、e with a procedural programming background. But polymorphism deals with decoupling in terms of types. In the last chapter, you saw how inheritance allows the treatment of an object as its own type or its base type. This ability is critical because it allows many types (derived from the same base typ
60、e) to be treated as if they were one type, and a single piece of code to work on all those different types equally. The polymorphic method call allows one type to express its distinction from another, similar type, as long as theyre both derived from the same base type. This distinction is expressed
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 九年級(jí)上學(xué)期語文期末模擬考試試卷
- 售后服務(wù)部年終總結(jié)
- 一年級(jí)數(shù)學(xué)計(jì)算題專項(xiàng)練習(xí)集錦
- 二年級(jí)數(shù)學(xué)計(jì)算題專項(xiàng)練習(xí)1000題匯編
- 《數(shù)學(xué)物理方法》第1章測試題
- 母雞孵蛋課件教學(xué)課件
- 南京航空航天大學(xué)《傳感器與檢測技術(shù)》2021-2022學(xué)年第一學(xué)期期末試卷
- 南京工業(yè)大學(xué)浦江學(xué)院《土木工程制圖》2021-2022學(xué)年第一學(xué)期期末試卷
- 南京工業(yè)大學(xué)浦江學(xué)院《商務(wù)禮儀》2022-2023學(xué)年第一學(xué)期期末試卷
- 淮河新城二期##樓工程施工組織設(shè)計(jì)
- 焊接作業(yè)中的人體工程學(xué)設(shè)計(jì)
- 《南京財(cái)經(jīng)大學(xué)》課件
- 農(nóng)業(yè)機(jī)械自動(dòng)化與智能化
- 人教部編版八年級(jí)語文上冊-第六單元-基礎(chǔ)知識(shí)專項(xiàng)訓(xùn)練(含答案)
- 八年級(jí)上學(xué)期校本課程教案
- 自然教育課程的追尋與實(shí)踐
- 2024年云南煙草公司招聘筆試參考題庫含答案解析
- 北師大版數(shù)學(xué)六年級(jí)上冊單元真題拔高卷 第6單元《比的認(rèn)識(shí)》(參考答案)
- 《學(xué)生心理健康教育》課件
- 2022年中國鐵路太原局集團(tuán)有限公司招聘考試真題
- 分解因式-十字相乘法
評論
0/150
提交評論