




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、畢業(yè)設(shè)計報告原創(chuàng)性聲明本人鄭重聲明:所呈交的畢業(yè)設(shè)計報告網(wǎng)上圖書資料管理系統(tǒng) 是本人在導(dǎo)師指導(dǎo)下,在江蘇師范大學(xué)計算機學(xué)院學(xué)習(xí)期間,進(jìn)行畢業(yè)設(shè)計時取得的成果。本人知道,除文中已經(jīng)標(biāo)明引用的內(nèi)容外,本畢業(yè)設(shè)計報告不包含任何其他個人或集體已經(jīng)發(fā)表或撰寫過的研究成果。對本文的研究做出貢獻(xiàn)的個人或集體,均已在文中以明確方式標(biāo)明。本人完全意識到本聲明的法律后果由本人承擔(dān)。網(wǎng)上圖書資料管理系統(tǒng)摘 要: internet 帶給我們的不僅是無窮的信息,更為我們帶來了很多的便利。在這個科技發(fā)展的時代,網(wǎng)絡(luò)應(yīng)用十分廣泛,所以許多人愿意通過網(wǎng)絡(luò)來使他們的生活變得更加的方便。網(wǎng)上圖示資料管理系統(tǒng)的出現(xiàn)在為大家?guī)肀憷?/p>
2、的同時也為國家省了一部分的資源,而且將書籍存放在網(wǎng)絡(luò)上也不用擔(dān)心書籍損壞或是丟失等認(rèn)為的破壞。因此網(wǎng)絡(luò)圖書管理平臺的建立是很有意義的。網(wǎng)上圖書資料管理平臺主要用于簡化圖書閱覽過程,增強圖書閱覽實時性。本系統(tǒng)主要分為以下幾個模塊:會員模塊,管理員模塊,圖書管理模塊以及書架管理模塊。系統(tǒng)中,設(shè)計了圖書查詢功能,支持模糊查詢,節(jié)約圖書查詢時間。設(shè)計會員書架功能,會員可添加、刪除圖書,增強了系統(tǒng)與用戶的互動性。設(shè)計了圖書案章節(jié)閱讀功能,增加了閱讀快捷性。本系統(tǒng)以 java 語言為基礎(chǔ),通過各種框架,構(gòu)建成為一個功能豐富的網(wǎng)上圖書資料管理系統(tǒng)。關(guān)鍵詞: 網(wǎng)絡(luò)、圖書資料管理、mvc、jdbc、jsponl
3、ine book management system abstract: internet brounds us not only endless information, but also more convenient. in this era os rapid development of science and technology, network application is very exetensive, so many people are willing to through the internet to make their lives more convenient.
4、 at this time, the emergence of the itnternet in the library to facilitate everyones also a part of the state of the resources, you can not print a lot of paper books,and books will be stored on the network without having to worry about the books will be damaged or is lost, and other manmade damage.
5、 therefore netwoke management platform for the establishment of books is of great significance.it mainly to be used in simplify the books reading process, enhancement books reading timeliness that on-line books and reference materials manages the platform. this system mainly divides into the followi
6、ng several modules: member module, manager module, books administration module and as well as bookshelf administration module in the system, it has inquiry function which supports the fuzzy inquiry. it also saves many time to query books. it has the members bookshelf function the, the member can add
7、ad and delete the books, it can enhancement interactived between user and system. it has designed the books function that it read according to the chapter.to java language-based, through a variety of open-source framework, it is easy to build a feature-rich online library.keywords: network、library i
8、nformation management、mvc、jdbc、jspi目目 錄錄第第 1 章章 緒論緒論.11.1 開發(fā)背景 .11.2 本系統(tǒng)的特色和創(chuàng)新 .1第第 2 章章 系統(tǒng)的運行環(huán)境與開發(fā)環(huán)境系統(tǒng)的運行環(huán)境與開發(fā)環(huán)境.32.1 系統(tǒng)的運行環(huán)境.32.2 系統(tǒng)的開發(fā)環(huán)境.32.2.1 開發(fā)語言-java.32.2.2 開發(fā)框架.32.2.3 mvc模式.32.2.4 jdbc技術(shù)介紹.42.2.5 jsp技術(shù).42.3 本章小結(jié).4第第 3 章章 系統(tǒng)的分析系統(tǒng)的分析.53.1 系統(tǒng)的可行性分析 .53.1.1 經(jīng)濟可行性.53.1.2 技術(shù)可行性.53.1.3 操作可行性.53.1.
9、4 社會可行性.53.2 系統(tǒng)的需求分析.53.2.1 管理員模塊.53.2.2 會員模塊.53.2.3 圖書管理模塊.53.2.4 書架管理模塊.53.3 實體關(guān)系圖 .63.3.1 總體e-r模型.63.3.2 管理員實例e-r圖.63.3.3 會員實體e-r圖.73.3.4 書架實體e-r圖.83.3.5 圖書實體e-r圖.83.4 本章小結(jié).9第第 4 章章 系統(tǒng)詳細(xì)設(shè)計系統(tǒng)詳細(xì)設(shè)計.104.1 系統(tǒng)功能分析 .104.2 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計 .104.2.1 數(shù)據(jù)庫的需求分析.104.2.2 數(shù)據(jù)庫創(chuàng)建的意義.114.3 總體設(shè)計 .114.3.1 管理員模塊.114.3.2 圖書模塊.
10、11ii4.3.3 會員模塊.124.3.4 書架模塊.124.4 系統(tǒng)流程圖 .134.4.1 登錄算法流程圖.134.4.2 管理員算法流程圖.144.4.3 會員算法流程圖.154.5 數(shù)據(jù)庫設(shè)計 .154.5.1 管理員信息.154.5.2 圖書分類.164.5.3 圖書信息.164.5.4 圖書章節(jié).174.5.5 會員信息.174.5.6 書架信息.174.6 本章小結(jié).18第第 5 章章 系統(tǒng)的實現(xiàn)系統(tǒng)的實現(xiàn).195.1 安裝方案.195.2 使用說明 .195.3 程序設(shè)計 .195.3.1 注冊功能.195.3.2 登錄功能.205.3.3 管理員登錄.225.3.4 會員登
11、錄.245.4 程序測試 .255.4.1 測試原理.255.4.2 測試過程.255.5 本章小結(jié) .27第第 6 章章 總結(jié)與展望總結(jié)與展望.286.1 總結(jié) .286.2 展望 .28畢業(yè)設(shè)計體會畢業(yè)設(shè)計體會.29致謝致謝.30參考文獻(xiàn)參考文獻(xiàn).31英文翻譯資料英文翻譯資料.321第第 1 章章 緒論緒論1.1 開發(fā)背景開發(fā)背景21 世紀(jì)是知識經(jīng)濟時代,計算機網(wǎng)絡(luò)作為這一時代重要的生產(chǎn)工具,給各個國家?guī)砹司薮蟮陌l(fā)展機遇。internet 電子商務(wù)的發(fā)展對于一個國家而言,不僅僅意味著一個商業(yè)機會,它還意味著一個全新的全球性的網(wǎng)絡(luò)驅(qū)動經(jīng)濟的誕生,這并非虛言,我們正在邁向一個擁有數(shù) 10 億
12、臺互聯(lián)電腦的世界,在這個時代,信息就意味著財富。據(jù)報道,1995-2000 年全球電子商務(wù)市場的營業(yè)額將達(dá)250 億美元。通過 internet 互聯(lián)的計算機將是企業(yè)在下一個 10 年制勝的有效工具。隨著計算機科學(xué)的發(fā)展,數(shù)據(jù)庫技術(shù)在 internet 中的應(yīng)用越來越廣泛,為廣大網(wǎng)絡(luò)用戶提供了更加周到和人性化的服務(wù)。個性化已逐漸成為 web 應(yīng)用的潮流。本系統(tǒng)具有用戶更簡單、界面更直觀等優(yōu)點。網(wǎng)上圖書管理在我國剛起步,但是發(fā)展很快。隨著互聯(lián)網(wǎng)技術(shù)的成熟,會有越來越多的人選擇在網(wǎng)上閱讀圖書。而且信息高速公路計劃的實施,人類社會進(jìn)入了信息時代。internet 遍布全球,將世界各地各種規(guī)模的網(wǎng)絡(luò)連
13、接成為一個整體。作為 internet 上一種先進(jìn)的,易于被人們所接受的信息檢索手段,網(wǎng)絡(luò)發(fā)展非常迅速,成為目前世界上最大的信息資源寶庫。 在國家大力推進(jìn)信息化建設(shè)的宏觀背景下,城市網(wǎng)絡(luò)基礎(chǔ)設(shè)施及應(yīng)用水平均已得到了較大的完善和提升。特別是經(jīng)濟發(fā)達(dá)的沿海地區(qū),商貿(mào)服務(wù)業(yè)也比較發(fā)達(dá),市民接受新事物能力和消費水平均較高。隨著計算機的發(fā)展和普及,網(wǎng)絡(luò)已經(jīng)成為人們獲取信息的一種方便、快捷、有效的手段。越來越多的人選擇用網(wǎng)絡(luò)來解決很多事。比如網(wǎng)上購物,用網(wǎng)絡(luò)來聯(lián)系,所以,在網(wǎng)上看書也即將成為一種趨勢。這也是本系統(tǒng)誕生的原因。本系統(tǒng)主要以 java 為開發(fā)語言,所涉及的 java 技術(shù)主要有 j2ee、ja
14、va struts 與 jsp。所使用的服務(wù)器是 tomcat。j2ee 是使用 java 技術(shù)開發(fā)企業(yè)級應(yīng)用的一種事實上的工業(yè)標(biāo)準(zhǔn),它是java 技術(shù)不斷適應(yīng)和促進(jìn)企業(yè)級應(yīng)用過程中的產(chǎn)物,它使中間件的編寫更加容易、可擴展性更強。java struts 是開源軟件。使用 struts 的目的是為了幫助我們減少在運用mvc 設(shè)計模型來開發(fā) web 應(yīng)用的時間。struts 可以清晰的區(qū)分控制、事物邏輯和外觀,從而簡化了開發(fā)應(yīng)用程序的過程。struts 提供的類是的開發(fā)工作更加的簡單。隨著 java 的流行,其再 web 上的應(yīng)用也越來越廣,tomcat 作為一個開源的servlet 容器,應(yīng)用前
15、景越來越廣。所以也越來越受到人們的青睞。1.2 本系統(tǒng)的特色和創(chuàng)新本系統(tǒng)的特色和創(chuàng)新(1)現(xiàn)在,科學(xué)技術(shù)的飛速發(fā)展把人類社會推向了一個嶄新的時代-信息時代。這已是無可爭議的事實:信息對社會經(jīng)濟發(fā)展的巨大推動作用,使其與物質(zhì)能源一起并列為現(xiàn)代社會的三大支柱,這在全社會達(dá)到共識。隨著對信息作為一種資源來管理的需求日益加強,信息研究領(lǐng)域出現(xiàn)了一種嶄新的管理思想和模式-信息管理。網(wǎng)上圖書管理系統(tǒng)就是典型的信息管理。一直以來人們使2用傳統(tǒng)的人工方式管理圖書館的工作,對于圖書館的還書過程,主要依靠手工。并且對于讀者的信息,不能很好的保存。而本系統(tǒng)將不存在這樣的劣勢。歸納起來,本系統(tǒng)具有如下優(yōu)點:1)可以讓
16、用戶在網(wǎng)上閱讀圖書,體會到網(wǎng)上讀書的樂趣。2)可以節(jié)約人力、物力資源。3)可以看到最新、最全的圖書4)查找方便5)界面美觀、大方,操作簡單。另外本系統(tǒng)使用 mvc 模式,使得 視圖層和業(yè)務(wù)層分離,這樣就允許更改視圖層代碼而不用重新編譯模型和控制器代碼,同樣,一個應(yīng)用的業(yè)務(wù)流程或者業(yè)務(wù)規(guī)則的改變只需要改動 mvc 的模型層即可。因為模型與控制器和視圖相分離,所以很容易改變應(yīng)用程序的數(shù)據(jù)層和業(yè)務(wù)規(guī)則。(2)本系統(tǒng)在前后臺模塊之間保持較好的模塊獨立性。整個系統(tǒng)分為兩大模塊:前臺與后臺,其中前臺主要負(fù)責(zé)輸入界面的數(shù)據(jù)控制以及界面與數(shù)據(jù)庫的關(guān)聯(lián),而后臺主要是對系統(tǒng)數(shù)據(jù)進(jìn)行集中處理,前后臺模塊之間高內(nèi)聚低
17、耦合,保持看較好的模塊獨立性。(3)關(guān)系數(shù)據(jù)庫作為系統(tǒng)后臺數(shù)據(jù)庫。關(guān)系數(shù)據(jù)庫是支持關(guān)系模型的數(shù)據(jù)庫系統(tǒng)。關(guān)系模型由關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合和完整性約束三部分組成。關(guān)系操作分為關(guān)系代數(shù)、關(guān)系演算、具有關(guān)系代數(shù)和關(guān)系演算雙重特點的語言(sql 語言) 。關(guān)系數(shù)據(jù)庫的完整性約束能夠使得本系統(tǒng)數(shù)據(jù)庫設(shè)計達(dá)到完整性、參照完整性和用戶定義的完整性。3第第 2 章章 系統(tǒng)的運行環(huán)境與開發(fā)環(huán)境系統(tǒng)的運行環(huán)境與開發(fā)環(huán)境2.1 系統(tǒng)的運行環(huán)境系統(tǒng)的運行環(huán)境軟件運行環(huán)境:windows 2000/xp,oracle 數(shù)據(jù)庫服務(wù)器:apache-tomcat-6.0.262.2 系統(tǒng)的開發(fā)環(huán)境系統(tǒng)的開發(fā)環(huán)境2.2.
18、1 開發(fā)語言開發(fā)語言-javajava 是一種簡單易用、完全面向?qū)ο蟆⒂衅脚_無關(guān)性、安全可靠的、主要面向 internet 的開發(fā)工具。java 語言被美國雜志 pc magazine 評為 1995 年十大優(yōu)秀科技產(chǎn)品。比爾蓋茨曾說過:“java 是長時間以來最卓越的程序設(shè)計語言” 。5java 自問世以來,技術(shù)和應(yīng)用發(fā)展非???,在很多領(lǐng)域都有應(yīng)用。而且 java 不支持指針,一切對內(nèi)存的訪問都必須通過對象的實例變量來實現(xiàn),這樣就防止程序員使用“特洛伊”木馬等欺騙手段,大大提高了安全性6。2.2.2 開發(fā)框架開發(fā)框架struts 框架struts 作為 mvc 的 web 框架,自推出以來不
19、斷受到開發(fā)者的追捧,得到廣泛的應(yīng)用。由于 struts1 需要編寫的代碼很多,容易引起“類爆炸” ,而且單元測試?yán)щy,這就促生了 struts2 的誕生。與 struts1 相比,struts2 的所有類都基于接口,核心接口獨立于 http。這些 api 并不依賴服務(wù)器小程序 api。在 struts2 中,沒有 actionform。而是將 actionform 中定義的屬性可以直接放在 action 類上。不僅僅如此,在struts2 中,標(biāo)簽有很多的改進(jìn),如標(biāo)簽被標(biāo)簽取代。struts2 中標(biāo)簽不單單發(fā)送輸出數(shù)據(jù),還能提供樣式表驅(qū)動標(biāo)記,這樣就可以用較少的代碼構(gòu)建一致性頁面。此外,str
20、uts2action 獨立于 http,因而與框架中立,很容易測試。struts 為攔截器提供了全面的支持。他還支持 ajax 的動態(tài) web 應(yīng)用,并且加入了 java5 注釋,作為 xml 和 java 屬性配置之外的一個替代辦法??傊?,在 struts2 中有很多的改進(jìn),可以使他的使用更為靈活。2.2.3 mvc 模式模式mvc(model-view-contorller)是 xeroxparc 在 20 世紀(jì) 80 年代為編程語言 smalltalk-80 所發(fā)明的一種軟件設(shè)計模式,至今已被廣泛使用,最近幾年被推薦為 sum 公司 j2ee 平臺的設(shè)計模式,其為開發(fā)交互式應(yīng)用系統(tǒng)提供了
21、一個優(yōu)秀的設(shè)計模式,受到越來越多開發(fā)者的歡迎。mvc 強制性地把應(yīng)用程序的輸入、處理和輸出分開。mvc 把應(yīng)用程序分成三個核心模塊:模型、視圖和控制器,它們分別擔(dān)負(fù)不同的任務(wù)。(1)視圖視圖是用戶看到并與之交互的界面。視圖向用戶顯示相關(guān)的數(shù)據(jù),并能接受用戶的輸入數(shù)據(jù),但是它并不進(jìn)行任何實際的業(yè)務(wù)處理。視圖可以向模型查詢業(yè)務(wù)狀態(tài),但并不能改變模型。視圖還能接受模型發(fā)出的數(shù)據(jù)更新事件,從4而對用戶界面進(jìn)行同步更新。(2)模型模型是應(yīng)用程序的主體部分。模型表示業(yè)務(wù)數(shù)據(jù)和業(yè)務(wù)邏輯。一個模型能為多個視圖提供數(shù)據(jù)。由于同一個模型可以被多個視圖重用,所以提高了應(yīng)用的可重用性。(3)控制器控制器接受用戶的輸入
22、并調(diào)用模型和視圖去完成用戶的需求。當(dāng) web 用戶單擊 web 頁面中的提交按鈕來發(fā)送 html 表單時??刂破鹘邮照埱蟛⒄{(diào)用相應(yīng)的模型組件去處理請求,然后調(diào)用相應(yīng)的視圖來顯示相應(yīng)模型的返回數(shù)據(jù)。(4)mvc 處理過程首先控制器接受用戶的請求,并決定應(yīng)該調(diào)用哪個模型來進(jìn)行處理;然后模型根據(jù)用戶請求進(jìn)行相應(yīng)的業(yè)務(wù)邏輯處理,并返回數(shù)據(jù);最后控制器調(diào)用相應(yīng)的視圖來格式化模型返回數(shù)據(jù),并通過視圖呈現(xiàn)給用戶。2.2.4 jdbc 技術(shù)介紹技術(shù)介紹jdbc 是一種用于執(zhí)行 sql 語句的 java api,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用 java 語言編寫的類和接口組成。jdbc 為工具/數(shù)
23、據(jù)庫開發(fā)人員提供了一個標(biāo)準(zhǔn)的 api,據(jù)此可以構(gòu)建更高級的工具和接口,使數(shù)據(jù)庫開發(fā)人員能夠用純 java api 編寫數(shù)據(jù)庫應(yīng)用程序,有了 jdbc,向各種關(guān)系數(shù)據(jù)發(fā)送 sql 調(diào)用。同時,將 java 語言和 jdbc 結(jié)合起開使程序不必為不同的平臺編寫不同的應(yīng)用程序,只須寫一遍程序就可以讓它在任何平臺上運行,這也是 java 語言“編寫一次,處處運行”的優(yōu)勢。2.2.5 jsp 技術(shù)技術(shù)jsp 是一種服務(wù)器端得編程語言,客戶端不使用原始的 java/jsp 代碼。java能夠以小程序的形式或者安裝在臺式機上的應(yīng)用程序的形式在客戶端使用。jsp頁面是通過特殊標(biāo)記和 java 代碼進(jìn)行擴展的
24、html 形式的 web 頁面,web 服務(wù)器和 javaserver 引擎都采用這兩種方式來創(chuàng)建客戶端的 web 瀏覽器。2.3 本章小結(jié)本章小結(jié)這一章節(jié)主要講述了本系統(tǒng)開發(fā)的運行環(huán)境和開發(fā)工具。本系統(tǒng)主要用了java 為開發(fā)語言,并且對 java 語言進(jìn)行了拓展。在這一基礎(chǔ)上,用了 struts 框架以及 mvc 模式。在連接數(shù)據(jù)庫方面,是用 jdbc 連接的數(shù)據(jù)庫,而前臺的頁面顯示則是用 jsp 來實現(xiàn)。5第第 3 章章 系統(tǒng)的分析系統(tǒng)的分析3.1 系統(tǒng)的可行性分析系統(tǒng)的可行性分析3.1.1 經(jīng)濟可行性經(jīng)濟可行性系統(tǒng)以網(wǎng)絡(luò)的方式傳遞圖書信息,借助網(wǎng)絡(luò)的力量,從而更好的實現(xiàn)了網(wǎng)上圖書信息的
25、管理,減少了不必要的開支,并且系統(tǒng)以信息化的管理提高了系統(tǒng)的可行性。系統(tǒng)的制作只要安裝 myeclipse 和 oracle 數(shù)據(jù)庫,開發(fā)時只要系統(tǒng)支持就行了,所以在經(jīng)濟上設(shè)計是可行的。3.1.2 技術(shù)可行性技術(shù)可行性本系統(tǒng)采用 java 作為開發(fā)語言,以 oracle 作為數(shù)據(jù)庫。java 語言具有強大的功能,對于系統(tǒng)各項功能的實現(xiàn),系統(tǒng)的運行效率和安全性的提高都有很大的幫助。在 21 世紀(jì)的今天,電腦已經(jīng)普及到每家每戶,而且一般人都有計算機的基礎(chǔ),所以本系統(tǒng)在技術(shù)上是可行的。3.1.3 操作可行性操作可行性對于有一定基礎(chǔ)的用戶,本系統(tǒng)操作簡單,不需要過多深入的了解,所以本系統(tǒng)在操作上是可行
26、的。3.1.4 社會可行性社會可行性在 21 世紀(jì)的今天,計算機已經(jīng)滲透到各個領(lǐng)域,成為各行各業(yè)必不可少的工具。在網(wǎng)絡(luò)盛行的今天,網(wǎng)上看書已經(jīng)成為趨勢,更能適應(yīng)社會的發(fā)展,也能創(chuàng)造更多的利益以及價值。3.2 系統(tǒng)的需求分析系統(tǒng)的需求分析網(wǎng)上圖書管理系統(tǒng),為人們看書提供了一個更好的平臺,使人們足不出戶就可以在網(wǎng)上看到自己想看的。本系統(tǒng)一個有四個功能模塊:管理員模塊、會員模塊、圖書管理模塊、書架管理模塊。3.2.1 管理員模塊管理員模塊管理員一共有三個子系統(tǒng)管理員可以創(chuàng)建新的管理員賦予一定的權(quán)限來管理系統(tǒng)。當(dāng)管理員登錄以后,可以對圖書信息進(jìn)行一定的操作。管理員還可以查看會員信息,并且可以刪除會員信
27、息。3.2.2 會員模塊會員模塊會員包括圖書查詢、個人信息的修改、添加個人書架三個子系統(tǒng)。會員登錄以后可以根據(jù)圖書分類、圖書名稱、章節(jié)信息來查看圖書。會員對查看到的圖書,如果喜歡,看以加入個人收藏夾,也可以進(jìn)行刪除。會員可以在登錄以后可以對自己個人信息進(jìn)行修改,對個人書架進(jìn)行管理。3.2.3 圖書管理模塊圖書管理模塊在圖書管理模塊們主要是由管理員進(jìn)行操作的。管理員可以對圖書信息進(jìn)行相應(yīng)的添加、刪除、修改以及查看。3.2.4 書架管理模塊書架管理模塊書架管理模塊主要是由會員自己進(jìn)行操作的。會員登錄以后,可以把查看6到得圖書加入自己的個人收藏夾,可以查看個人收藏夾,對書架可以刪除、修改。3.3 實
28、體關(guān)系圖實體關(guān)系圖3.3.1 總體總體 e-r 模型模型 圖 3.1 總體 e-r 模型3.3.2 管理員實例管理員實例 e-r 圖圖描述了管理員的姓名,首次登錄時間,以及上次退出時間。7管理員姓名首次登錄時間上次退出時間圖 3.2 管理員 e-r 圖3.3.3 會員實體會員實體 e-r 圖圖描述了會員的基本信息:會員的賬號、郵箱、個人主頁、注冊日期、上次登錄時間、生日、地址、性別、姓名等。會員賬號郵箱個人主頁注冊日期上次登錄時間生日地址性別姓名圖 3.3 會員 e-r 圖3.3.4 書架實體書架實體 e-r 圖圖描述了書架的基本信息:圖書錄入時間、最近閱讀時間、會員姓名、圖書名稱。以供會員查
29、看,以及對書架進(jìn)行管理。8書架圖書錄入時間最近閱讀時間會員姓名圖書名稱圖 3.4 書架實體 e-r 圖3.3.5 圖書實體圖書實體 e-r 圖圖描述了圖書的基本信息:圖書名稱、圖書簡介、入庫時間以及圖書類型。圖書圖書名稱圖書簡介入庫時間圖書類型圖 3.5 圖書信息 e-r 圖3.4 本章小結(jié)本章小結(jié)這一章節(jié)主要講述了系統(tǒng)的可行性分析,包括經(jīng)濟可行性、技術(shù)可行性、9社會可行性以及操作可行性分析,從這幾個跟面來闡述了本系統(tǒng)的可行性,并對系統(tǒng)進(jìn)行了需求分析,確定了本系統(tǒng)的四個功能模塊:管理員模塊、會員模塊、圖書管理模塊、書架管理模塊并且根據(jù)系統(tǒng)的需求分析,畫出了各個功能模塊的 e-r 圖。10第第
30、4 章章 系統(tǒng)詳細(xì)設(shè)計系統(tǒng)詳細(xì)設(shè)計4.1 系統(tǒng)功能分析系統(tǒng)功能分析網(wǎng)上圖書資料管理系統(tǒng)是一個 web 應(yīng)用系統(tǒng),主要功能是完成用戶管理,書架管理,會員管理,圖書管理四項功能,讀者可以在網(wǎng)上直接選定自己想要看的書在線瀏覽或者是下載收藏。將整個系統(tǒng)功能模塊分為如下幾個子模塊:網(wǎng)上圖書資料管理員模塊書架管理模塊圖書管理模塊會員管理模塊圖 4.1 層次方框圖會員管理模塊:會員注冊、會員登錄、會員個人信息管理書架管理模塊:添加圖書、刪除圖書、顯示圖書列表、查看書的具體內(nèi)容管理員管理模塊:管理員登錄、查看圖書信息、對數(shù)據(jù)庫中的信息進(jìn)行增刪改查圖書管理模塊:管理員添加圖書信息、刪除圖書信息、修改圖書信息、查
31、看所有圖書、添加管理員信息、修改管理員信息4.2 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計數(shù)據(jù)庫結(jié)構(gòu)設(shè)計數(shù)據(jù)庫在一個信息管理系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫結(jié)構(gòu)設(shè)計的好壞降直接影響到系統(tǒng)的效率及系統(tǒng)實現(xiàn)的效果。合理的數(shù)據(jù)庫結(jié)構(gòu)設(shè)計可以提高數(shù)據(jù)庫存儲的效率,保證數(shù)據(jù)的完整性和一致性。合理的數(shù)據(jù)庫結(jié)構(gòu)也將有利于程序的實現(xiàn)14。4.2.1 數(shù)據(jù)庫的需求分析數(shù)據(jù)庫的需求分析用戶的需求具體體現(xiàn)在各種信息的添加、修改、刪除和查詢,這種數(shù)據(jù)庫結(jié)構(gòu)能夠滿足各種信息的輸入和輸出。收集基本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)處理的流程,組成一份詳盡的數(shù)據(jù)字典,為后面的具體設(shè)計打下基礎(chǔ)10。11需求分析是軟件定義時期的最后一個階段,它的基本任務(wù)是準(zhǔn)確的回答
32、“系統(tǒng)必須做什么”這個問題7。需求分析的任務(wù)還不是確定系統(tǒng)怎樣完成它的工作,而僅僅是確定系統(tǒng)必須完成哪些工作,也就是對目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。結(jié)合系統(tǒng)的實際情況,系統(tǒng)功能如下:1)會員注冊2)會員登錄3)管理員登錄4)管理員修改圖書資料5)每個會員對應(yīng)有一個書架6)會員可以往自己的書架中添加圖書7)圖書可以按分類來查找8)可以通過每章的題目來查找當(dāng)前章節(jié)的信息9)可以查看圖書的具體內(nèi)容4.2.2 數(shù)據(jù)庫創(chuàng)建的意義數(shù)據(jù)庫創(chuàng)建的意義數(shù)據(jù)表是一組有意義的,相對完整的數(shù)據(jù)的集合,它是構(gòu)成數(shù)據(jù)庫的最直接的單元。換句話說,數(shù)據(jù)庫是由一個或多個數(shù)據(jù)表直接構(gòu)成的。4.3 總體設(shè)計總體設(shè)計4.
33、3.1 管理員模塊管理員模塊在管理員模塊中,可以執(zhí)行對管理員的添加、查詢、更新、刪除等操作??梢酝ㄟ^管理員賬號查找管理員。程序?qū)⑺袑芾韱T用到的模塊都封裝到了 sysuseraction 中,其中包括了對管理員的添加、查詢、修改、刪除等操作。通過 book_servlet.xml 獲得了業(yè)務(wù)邏輯層 isysuserservice,注冊一個管理員 int savasysuser(sysuser sysuser),修改管理員的信息 int updatesysuser(sysuser sysuser),通過管理員的賬號刪除管理員 int deletesysuser(string account),
34、通過賬號查找管理員信息 sysuser findbyprimarykey(string account),顯示所有管理員的信息listquerybysql(string criteria)。在通過 book_service.xml 獲得了 dao 層得 sysuserimpl,實現(xiàn)對數(shù)據(jù)庫的具體的曾刪改查。4.3.2 圖書模塊圖書模塊在圖書模塊中,可以把圖書模塊分為三個部分:圖書類別、圖書信息、圖書章節(jié)。程序?qū)D書的具體操作都封裝到了 bookaction 中,其中包括了對圖書類別、信息、章節(jié)等一系列增刪改查功能。通過(book_servlet.xml)將 action和 service 層
35、進(jìn)行關(guān)聯(lián);用(book_service.xml)把 service 層和 dao 層進(jìn)行關(guān)聯(lián);最后用(book_dao.xml)文件把 dao 層和 jdbctemplate 相關(guān)聯(lián),這樣就完成了 spring 和 jdbc 的完美結(jié)合。在圖書類別中,通過圖書的類別對圖書類別進(jìn)行保存 int savabooktype(booktype booktype)、通過類型的 id 對圖書類別進(jìn)行刪除 int deletebooktype(longbooktypeid)、通過類別查詢圖書,并按照圖書類型返回一個存放圖書的集合 listquerybysqlofbooktype(string criteri
36、a)、12通過圖書的類型號查找他所對應(yīng)的圖書類型,并修改 booktype finfbookprimarykeyofbooktype(longbooktypeid)通過 book_service.xml 獲得了 dao 層得 booktypeimpl,實現(xiàn)對數(shù)據(jù)庫的具體的增刪改查。在圖書信息中,通過圖書信息對圖書進(jìn)行保存 int savabookinfo(bookinfo bookinfo)、通過圖書信息修改圖書 int updatebookinfo(bookinfo bookinfo)、通過圖書類別 book_type_id 來查詢圖書,并按圖書類型返回一個存放圖書的集合 listquery
37、(long booktypeid)、通過圖書的 book_type_id 查找一類圖書,bookinfo findbyprimarykeyofbookinfo(long bookinfoid)、通過 book_service.xml 獲得了 dao 層得 bookinfoimpl,實現(xiàn)對數(shù)據(jù)庫的具體的增刪改查。在章節(jié)信息中,通過章節(jié)的信息可以對章節(jié)進(jìn)行保存 itn savabookchapter(bookchapter bookchapter)、通過章節(jié)的信息可以對章節(jié)進(jìn)行修改 int updatebookchapter(bookchapter bookchapter)、通過章節(jié)的book_c
38、hapter_id 可以對章節(jié)的信息進(jìn)行修改 int deletebookchapter(long bookchapterid)、通過章節(jié)的 book_chapter_id 來實現(xiàn)對章節(jié)內(nèi)容的查找一個章節(jié)飛內(nèi)容 bookchapter findbyprimarykeyofbookchapter(long bookchapterid)、通過圖書的 book_info_id 也可以實現(xiàn)對章節(jié)內(nèi)容的查找,并且返回一個所有章節(jié)的集合 list querybookchapter(long bookinfoid)。通過 book_service.xml 獲得了 dao 層的 bookchapterimpl
39、,實現(xiàn)對數(shù)據(jù)庫的具體的增刪改查。4.3.3 會員模塊會員模塊在會員模塊中,我們可以對會員進(jìn)行增刪改查,可以通過會員的 id 查找會員,可以顯示所有會員的信息。我們將所有對會員用到的模塊都封裝到了 iuserserviceaction 中,其中包括了對會員添加、查詢、修改、刪除等操作。通過 book_servlet.xml 獲得了業(yè)務(wù)邏輯層 iuserservice,注冊一個會員 int savamemberinfo(memberinfo memberinfo)、修改管理員的信息 int updatememberinfo(memberinfo memeberinfo),通過會員的賬號刪除會員 i
40、nt deletememberinfo(long memberinfoid),通過 member_info_id 查找會員信息 memberinfo findbyprimarykey(long memberinfoid),通過賬號查找會員的信息listfindbyonlyfiles(string account),顯示所有會員的信息listquerybysqlbymember(string criteria)。在通過 book_service.xml 獲得了 dao 層得 memberinfoimpl,實現(xiàn)對數(shù)據(jù)庫的具體增刪改查。4.3.4 書架模塊書架模塊在書架模塊中,用戶可以把自己喜歡的圖
41、書加到書架中去,以供日后查閱。我們將所有書架用到的模塊也封裝到了 iuserserviceaction 中,其中包括對書架的保存 int savabookshelfinfo(bookshelf bookshelfinfo),通過 book_shelf_id刪除書架 int deletebookshelfinfo(long bookshelf),通過 member_info_id 和book_shelf_id 共同刪除書架 int deletebookshelfinfo(long memberinfo long bookinfo),通過書架的 book_shelf_id 來查找書架 booksh
42、elfinfo findbyprimarykeybs(long bookshelfid),顯示所有書架中書的信息13listquerybysql(string criteria),通過 member_info_id 來查找書架中書籍的信息 listfindbookofbookshelf(long memberinfoid)。4.4 系統(tǒng)流程圖系統(tǒng)流程圖4.4.1 登錄算法流程圖登錄算法流程圖開始輸入姓名在數(shù)據(jù)庫中是否存在?輸入密碼與姓名是否匹配?成功結(jié)束是否否是圖 4.1 登錄算法流程圖登錄流程圖主要描述了登錄的過程:開始,輸入姓名,看看在數(shù)據(jù)庫中是否存在,然后輸入密碼,判斷是否與姓名相匹配,
43、是的話就成功,登錄結(jié)束。144.4.2 管理員算法流程圖管理員算法流程圖開始登錄是否成功?查看會員列表結(jié)束否是添加圖書刪除圖書創(chuàng)建管理員圖 4.2 管理員算法流程圖管理員流程圖:管理員開始登錄,登錄成功之后,管理員可以進(jìn)行一系列操作,管理員可以添加圖書,刪除圖書,還可以再創(chuàng)建一個管理員,也可以查看會員列表。154.4.3 會員算法流程圖會員算法流程圖開始登錄是否成功?修改個人信息結(jié)束否是給書架添加圖書刪除書架內(nèi)容閱讀圖書圖 4.3 會員算法流程圖會員流程圖:會員登錄成功后,可以進(jìn)行一系列的操作:會員給自己的書架添加圖書,也可以刪除書架的內(nèi)容。會員可以直接閱讀圖書,并且可以修改個人信息。4.5
44、數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計4.5.1 管理員信息管理員信息具體的管理員基本信息,代表現(xiàn)實世界中一個真實的人。主鍵是管理員的賬號。管理員信息包括管理員的賬號,管理員登錄密碼,真實姓名還有備注信息以及首次輸入的時間和最后更改時間。在管理員信息表中,登錄密碼、真實姓名、首次輸入時間都是非空的。16表 4.1 管理員信息字段名字段類型中文描述備注非空主鍵accountvarchar(64)唯一標(biāo)識/賬號login_passwordvarchar(64)登錄密碼namevarchar(32)真實姓名remarksvarchar(1024)備注信息enter_timedatatime首次輸入時間change_t
45、imedatatime最后更改時間4.5.2 圖書分類圖書分類圖書的類別信息。它的唯一主鍵是圖書分類編號。圖書信息包括圖書分類編號,圖書分類名稱,備注信息,以及首次輸入時間和最后更改時間。圖書分類名稱和首次輸入時間是非空的。表 4.2 圖書分類字段名字段類型中文描述備注非空主鍵book_type_idnumeric(19,0)唯一標(biāo)識/圖書分類編號namevarchar(64)圖書分類名稱remarksvarchar(1024)備注信息enter_timedatetime首次輸入時間change_timedatetime最后更改時間4.5.3 圖書信息圖書信息具體描述圖書的信息,唯一主鍵是圖書
46、編號。圖書信息包括圖書編號,圖書名稱,圖書簡介,備注信息,還包括了管理員首次輸入圖書的時間和最后更改的時間。在圖書信息里面把圖書分類編號設(shè)為了外鍵。并且圖書名稱、圖書簡介和首次輸入時間以及圖書分類編號都是非空的。表 4.3 圖書信息字段名字段類型中文描述備注非空主鍵book_info_idnumeric(19,0)唯一標(biāo)識/圖書編號 namevarchar (32)圖書名稱contexttext圖書簡介remarksvarchar(1024)備注信息enter_timedatetime首次輸入時間change_timedatetime最后更改時間book_type_idnumeric(19,0
47、)圖書分類編號fk174.5.4 圖書章節(jié)圖書章節(jié)每本圖書中章節(jié)的顯示。章節(jié)顯示的主鍵是圖書編號,然后下面由章節(jié)序號,章節(jié)名稱,章節(jié)內(nèi)容,備注信息,還包括了管理員首次輸入章節(jié)信息的時間以及最后更改的時間。圖書編號是外鍵。章節(jié)序號、章節(jié)名稱、章節(jié)內(nèi)容、首次輸入時間以及圖書編號都是非空的。表 4.4 圖書章節(jié)字段名字段類型中文描述備注非空主鍵book_chapter_idnumeric(19,0)唯一標(biāo)識/圖書編號 seqint章節(jié)序號namevarchar (32)章節(jié)名稱contexttext章節(jié)內(nèi)容remarksvarchar(1024)備注信息enter_timedatetime首次輸入時
48、間change_timedatetime最后更改時間book_info_idnumeric(19,0)圖書編號fk4.5.5 會員信息會員信息具體的用戶的基本信息,代表現(xiàn)實世界中一個真實的人。會員信息表中會員編號是主鍵。會員信息表包括會員編號,會員的賬號,姓名、地址、參與者的姓名、生日、郵箱、個人主頁、備注信息、首次輸入時間以及最后更改時間。會員賬號、登錄密碼、姓名以及首次輸入時間都是非空的。表 4.5 會員信息字段名字段類型中文描述備注非空主鍵member_info_idnumeric(19,0)唯一標(biāo)識/會員編號accountvarchar(64)賬號login_passwordvarch
49、ar(64)登錄密碼namevarchar(32)姓名addressvarchar(200)地址genderchar(1)參與者性別birthdaydate生日emailvarchar(100)郵箱index_pagevarchar(100)個人主頁remarksvarchar(1024)備注信息enter_timedatetime首次輸入時間change_timedatetime最后更改時間4.5.6 書架信息書架信息可以存放用戶想要保存的書籍。在書架信息中,書架編號是主鍵。書架信息包括書架編號,加入時間,最后閱讀時間,還包括了圖書編號以及會員編號。18圖書編號和會員編號是外鍵。加入的時間、
50、圖書編號、會員編號都是非空的。表 4.6 書架信息字段名字段類型中文描述備注非空主鍵book_shelf_idnumeric(19,0)唯一標(biāo)識/書架編號enter_timedatetime加入時間change_timedatetime最后閱讀時間book_info_idnumeric(19,0)圖書編號fkmember_info_idnumeric(19,0)會員編號fk4.6 本章小結(jié)本章小結(jié)本章節(jié)主要寫了本系統(tǒng)的設(shè)計過程。首先對系統(tǒng)進(jìn)行功能分析,介紹了本系統(tǒng)的四個功能模塊,并且對每個模塊的功能都做了說明。然后就是數(shù)據(jù)庫的設(shè)計,以及數(shù)據(jù)庫表的設(shè)計。在系統(tǒng)的總體設(shè)計中,對系統(tǒng)各個模塊之間做了
51、詳細(xì)的說明,并且給出了系統(tǒng)的程序流程圖,以及登錄算法流程圖、管理員算法流程圖和會員算法流程圖。19第第 5 章章 系統(tǒng)的實現(xiàn)系統(tǒng)的實現(xiàn)5.1 安裝方案安裝方案本產(chǎn)品使用的開發(fā)環(huán)境是 myeclipse,使用 apache tomcat6.0數(shù)據(jù)庫使用的是 oracle 數(shù)據(jù)庫,建好數(shù)據(jù)庫和表之后,打開 tomcat 就可以直接運行了。5.2 使用說明使用說明將工程直接部署到服務(wù)器上,打開 tomcat, 就可以使用了。5.3 程序設(shè)計程序設(shè)計5.3.1 注冊功能注冊功能主頁面 圖 5.1 主頁面會員點擊注冊后會進(jìn)入注冊頁面,當(dāng)用戶添加好個人信息以后提交成功就可以通過登錄進(jìn)入了(如圖 5.2 所
52、示) 。會員登錄public string login()throws sysexception, appexception log.debug(登錄);(memberinfo);if(memberinfo.getaccount() = null | memberinfo.getaccount().trim().length() 1)return login;list list = userservice.findbyonlyfiles(memberinfo.getaccount();if(list = null | list.size() != 1)this.error =
53、用戶名錯誤!;return login;20elsememberinfo mi = list.get(0);if(!memberinfo.getloginpassword().equals(mi.getloginpassword()this.error = 密碼錯誤!;return login;request.getsession().setattribute(user, mi);request.getsession().removeattribute(mybook);list blist = userservice.findbookofbookshelf(mi.getmemberinfoid
54、();request.getsession().setattribute(mybook, blist);memberinfo = new memberinfo();booktypelist = bookservice.querybysqlofbooktype(null);log.debug(登錄成功);return success;圖 5.2 注冊頁面5.3.2 登錄功能登錄功能在登錄時,通過 index.jsp 頁面中的登錄和后臺管理來區(qū)分普通會員登錄和管理員登錄。當(dāng)點擊登錄時,只是普通會員登錄(如圖 5.3) , “后臺管理”則是管理員登錄時使用的(如圖 5.4) 。21圖 5.3 會員登
55、錄圖 5.4 管理員登錄public string login()throws sysexception, appexception,exception log.debug(登錄);(sysuser);/日志信息if(sysuser.getaccount() = null | sysuser.getaccount().trim().length() 1)return login;sysuser su = sysuserservice.findbyprimarykey(sysuser.getaccount();if(su = null)this.error = 用戶名錯誤!;re
56、turn login;elseif(!sysuser.getloginpassword().equals(su.getloginpassword()this.error = 密碼錯誤!;return login;request.getsession().setattribute(adminuser, su);sysuser = new sysuser();log.debug(登錄成功);return index;public string logout()throws sysexception, appexception request.getsession().removeattribute
57、(adminuser);request.getsession().getservletcontext().setattribute(, );22return index;overridepublic string execute() throws exception return index;5.3.3 管理員登錄管理員登錄(1)顯示所有管理員的功能(圖 5.5).圖 5.5 顯示管理員功能(2)管理員創(chuàng)建新的管理員(如圖 5.6)圖 5.6 創(chuàng)建新管理員(3)添加圖書分類信息(如圖 5.7)23圖 5.7 添加圖書分類信息(4)添加圖書信息(如圖 5.8)圖 5.8 添加圖書信息(5)添加圖
58、書章節(jié)信息(如圖 5.9)圖 5.9 添加圖書章節(jié)章節(jié)查詢public string bookchapter() throws sysexception, appexception 24/bookinfo bi = bookservice.findbyprimarykeyofbookinfo(bookinfo.getbookinfoid();bookchapterlist = bookservice.querybookchapter(bookinfo.getbookinfoid();return chapterlist;/查看圖書章節(jié)public string selectbook() thr
59、ows sysexception, appexception log.debug(轉(zhuǎn)向修改);booktypelist = bookservice.querybysqlofbooktype(null);bookinfo bi = bookservice.findbyprimarykeyofbookinfo(bookinfo.getbookinfoid();if(bi != null)bookinfo = bi;return sbookinfo;5.3.4 會員登錄會員登錄(1)會員登錄(如圖 5.10) 圖 5.10 會員登錄(2)查找圖書(如圖 5.11) 圖 5.11 查找圖書/圖書類別查
60、詢public string booktype() throws sysexception, appexception log.debug(查詢所有的圖書類別!);25booktypelist = bookservice.querybysqlofbooktype(null);/bookservice.querybysqlofbooktype(null);return typelist;(3)個人書架(如圖 5.12)圖 5.12 個人書架5.4 程序測試程序測試5.4.1 測試原理測試原理軟件測試的目的是盡可能多的發(fā)現(xiàn)并排除軟件中潛藏的錯誤,最終把一個高質(zhì)量的軟件系統(tǒng)交給用戶。對于開發(fā)出的圖書
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/IEC TS 7339:2024 EN Information technology - Cloud computing - Overview of platform capabilities type and platform as a service
- 【正版授權(quán)】 ISO 37111:2024 EN Sustainable cities and communities - Urban settlements - Guidance for a flexible approach to phased implementation of ISO 37101
- 2025年度大清包勞務(wù)合同(市政道路施工管理協(xié)議)
- 2025年度廢鐵進(jìn)出口代理與運輸服務(wù)合同
- 2025年度科技展會場地布置及維護(hù)服務(wù)合同
- 2025年起動腳蹬桿項目建議書
- 2025年超低頻振動標(biāo)準(zhǔn)合作協(xié)議書
- 多元化教學(xué)方法實施方案計劃
- 倉庫工作總結(jié)計劃指引
- 社會媒體策略的實踐與回顧計劃
- 定量包裝商品培訓(xùn)
- 毛戈平-+毛戈平深度報告:再論毛戈平商業(yè)模式與核心壁壘:個人IP+化妝學(xué)校+線下服務(wù)
- 第二章美容手術(shù)的特點及其實施中的基本原則美容外科學(xué)概論講解
- 山東省濰坊市2024-2025學(xué)年高三上學(xué)期1月期末考試生物試卷含答案
- 2025年“春訓(xùn)”學(xué)習(xí)心得體會例文(3篇)
- 中央2025年公安部部分直屬事業(yè)單位招聘84人筆試歷年參考題庫附帶答案詳解
- 咯血病人介入術(shù)后護(hù)理
- 2025年春新外研版(三起)英語三年級下冊課件 Unit4第1課時Startup
- 2025-2025學(xué)年度第二學(xué)期高二物理教學(xué)計劃
- 幼兒園市級課一等獎-大班語言健康繪本《我的情緒小怪獸》有聲繪本課件
- 2025年供電所所長個人工作總結(jié)(2篇)
評論
0/150
提交評論