版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 目 錄</b></p><p><b> 1、緒論2</b></p><p><b> 1.1引言2</b></p><p><b> 1.2文獻(xiàn)綜述2</b></p><p><b> 2、系統(tǒng)分析
2、3</b></p><p> 2.1系統(tǒng)的需求分析3</p><p> 2.2系統(tǒng)的可行性分析4</p><p> 3、系統(tǒng)總體設(shè)計5</p><p><b> 3.1系統(tǒng)設(shè)計5</b></p><p> 3.1.1系統(tǒng)功能設(shè)計6</p><p&
3、gt; 3.1.2系統(tǒng)流程分析6</p><p> 3.2數(shù)據(jù)庫設(shè)計6</p><p> 3.2.1 數(shù)據(jù)庫概念設(shè)計6</p><p> 3.2.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)8</p><p> 3.3系統(tǒng)的開發(fā)及運(yùn)行環(huán)境10</p><p> 4、系統(tǒng)詳細(xì)設(shè)計11</p><p>
4、; 4.1項目總體結(jié)構(gòu)11</p><p> 4.2普通用戶操作設(shè)計12</p><p> 4.3管理員操作設(shè)計14</p><p> 4.4數(shù)據(jù)庫連接設(shè)計18</p><p><b> 5、結(jié)束語19</b></p><p><b> 參考文獻(xiàn)19</b&
5、gt;</p><p><b> 致謝19</b></p><p> 附錄 系統(tǒng)設(shè)計核心代碼20</p><p> 圖書自助服務(wù)平臺設(shè)計和開發(fā)</p><p> 摘 要:圖書自助服務(wù)平臺是典型的計算機(jī)信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起
6、數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點。本管理系統(tǒng)包括了系統(tǒng)登錄、讀者操作模塊、管理員操作模塊等三個總的功能塊,使用戶方便的對圖書館的信息進(jìn)行管理,為讀者借閱還書的節(jié)省了大量的時間。</p><p> 經(jīng)過分析,我們使用SUN(Oracle)公司的 Java/JSP作為開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具 ,首先在短時間內(nèi)建立系統(tǒng)應(yīng)用原型,然后,對初始原型
7、系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。</p><p> 關(guān)鍵字:圖書自助服務(wù)平臺;JavaJSP;MySQL</p><p> The Design and Implementation Of the Book Information System</p><p> ABSTRACT:The management informatio
8、n system of the library is a typical computer application of managing information system (know as MIS),which mainly includes building up data-base of back-end and developing the application interface of front-end. The f
9、ormer required consistency and integrality and security of data. The later should make the application powerful and easily used. Including systematically,, books manage, borrow information management four a piece of tota
10、l functional blocks manage</p><p> By looking up lots of datum, we selected Java presented by SUN because of its objective tools in Win32. Java offered a series of ActiveX operating a data-base. It can give
11、 you a short-cut to build up a prototype of system application. </p><p> Keywords: The management information system of the library; database; Java; MySQL. </p><p><b> 1 緒論</b><
12、/p><p> 1.1 研究背景及意義</p><p> 隨著人類社會的發(fā)展,人類知識不斷地增長、擴(kuò)大。人們也面臨更大的挑戰(zhàn),在這種挑戰(zhàn)面前,人們需要不斷的學(xué)習(xí)、不斷的進(jìn)步,來面對更大的挑戰(zhàn)。在這種形勢下,書籍就漸漸地成為人們獲取、增長知識的主要途徑,而圖書館就自然而然地在人們的生活中占據(jù)了一定的位置。在圖書館方面,就必然面臨著一個問題:怎樣才能科學(xué)、有效的把圖書館里圖書管理好?這一個問題
13、直接關(guān)系到讀者求知的方便程度,也關(guān)系到圖書館的發(fā)展。在現(xiàn)代社會中,計算機(jī)已經(jīng)在各行各業(yè)發(fā)揮著重要的作用,用計算機(jī)來管理已經(jīng)成為必然的結(jié)果。圖書館也不例外,在圖書館的管理過程中,同樣也必需使用計算機(jī)來輔助管理。有了計算機(jī)的輔助管理,必然要有一套較完善的計算機(jī)處理系統(tǒng)(圖書自助服務(wù)平臺)來管理圖書館,這樣才能科學(xué)、有效的對圖書進(jìn)行管理。</p><p> 利用圖書自助服務(wù)平臺進(jìn)行管理,能更有效的對圖書進(jìn)行系統(tǒng)管理,
14、方便讀者對各類圖書的查詢,同時也大大提高了讀者查閱相關(guān)圖書系想你方面的工作效率和提高圖書館的服務(wù)效率,為讀者提供方便。針對上述情況,本人開發(fā)了一套圖書館管理專業(yè)軟件--圖書自助服務(wù)平臺,該系統(tǒng)并不針對某一個圖書館而開發(fā),所以在通用性方面相對較廣些。相對于同類軟件來說,該系統(tǒng)功能較齊全,集合了圖書館從入庫、瀏覽、管理等多種功能。在操作方面也比較方便,界面也較友好,因為是采用B/S架構(gòu),無需安裝客戶端,只要在瀏覽器中訪問即可。在數(shù)據(jù)庫方面,
15、該系統(tǒng)采用MySQL5.1數(shù)據(jù)庫系統(tǒng),在安全性方面也有了較大的提高例,談?wù)勂溟_發(fā)過程和所涉及到的問題及解決方法。在下面的各章中我們將對圖書自助服務(wù)平臺簡單介紹其開發(fā)過程和所涉及到的問題及解決方法。與傳統(tǒng)的手工作業(yè)相比,它大大提高了工作效率,而且系統(tǒng)采用人機(jī)對話方式,菜單提示,界面友好、操作簡單,實現(xiàn)各種應(yīng)用,加強(qiáng)了圖書管理。</p><p><b> 1.2 文獻(xiàn)綜述</b></p&
16、gt;<p> 近些年,不斷有學(xué)者對圖書館信息化管理的實現(xiàn)進(jìn)行研究和分析。</p><p> 孟莉指出:現(xiàn)階段圖書管理系統(tǒng)數(shù)字化是為學(xué)生創(chuàng)造更好的讀書環(huán)境的必備條件,但是,圖書管理系統(tǒng)的核心內(nèi)容,在于如何使其與互聯(lián)網(wǎng)絡(luò)完美結(jié)合,真正實現(xiàn)及時性和準(zhǔn)確性。而且,隨著互聯(lián)網(wǎng)技術(shù)的迅猛發(fā)展,傳統(tǒng)的手工查閱圖書已經(jīng)不能適應(yīng)和滿足當(dāng)今的高等院校圖書管理工作的需求。 </p><p>
17、 而且現(xiàn)在知識經(jīng)濟(jì)的核心是知識創(chuàng)新 ,而知識創(chuàng)新要求高等教育必須培養(yǎng)造就一批高素質(zhì)的創(chuàng)新人才。而數(shù)字化圖書館是高校圖書館發(fā)展的必然趨勢。所以建設(shè)數(shù)字化圖書館對培養(yǎng)造就高素質(zhì)的創(chuàng)新人才具有不可替代的重要作用。她論述了數(shù)字化圖書館的概念、特征及其對培養(yǎng)高素質(zhì)創(chuàng)新人才的重要作用 ,并提出了面向培養(yǎng)創(chuàng)新人才的數(shù)字化圖書館的建設(shè)方略。</p><p> 薛貞芳、范曉鵬都對高校圖書館數(shù)字化建設(shè)的現(xiàn)狀進(jìn)行了分析 ,并試圖對
18、地方高校圖書館的數(shù)字化建設(shè)提出了自己建設(shè)方案。并且分析了我國數(shù)字化圖書館建設(shè)的環(huán)境和基礎(chǔ),著重歸納圖書館在中文數(shù)字信息資源建設(shè)中的作用,他認(rèn)為“館藏資源數(shù)字化”和“社會資源館藏化”這兩種數(shù)字化圖書館建設(shè)模式同樣重要。最后對我國數(shù)字化圖書館建設(shè)的規(guī)劃與管理提出了建議。</p><p> 徐方、鄧敏他們認(rèn)為內(nèi)容管理系統(tǒng)是一個具有良好擴(kuò)展性、穩(wěn)定性和高效率的信息共享平臺。一個好的信息管理系統(tǒng),并不是體現(xiàn)在其開發(fā)技術(shù)有
19、多么高端,而是體現(xiàn)在系統(tǒng)的設(shè)計思路和功能實現(xiàn)的策略上。介紹了內(nèi)容管理系統(tǒng)的概念及需求,討論了內(nèi)容管理的現(xiàn)狀以及未來發(fā)展趨勢,并對內(nèi)容管理系統(tǒng)的選型提出建議。由于現(xiàn)在的互聯(lián)網(wǎng)的普及與無線網(wǎng)絡(luò)的興盛,促成了數(shù)字化信息內(nèi)容的迅速成長,Forrester Research的一個調(diào)查顯示,企業(yè)的信息內(nèi)容量在以每年200%的速度增長,而且在不停高速增長。</p><p> 因此,根據(jù)目前圖書館業(yè)務(wù)運(yùn)行的實際情況開發(fā)一套圖書
20、館信息化管理系統(tǒng)十分必要。圖書自助服務(wù)平臺的開發(fā)具有很大的研究價值,對圖書館的信息化進(jìn)程具有重大現(xiàn)實意義。</p><p><b> 2 系統(tǒng)分析</b></p><p> 對將要設(shè)計與開發(fā)的系統(tǒng)的各方面進(jìn)行分析是不可或缺的一個步驟。</p><p> 2.1 圖書自助服務(wù)平臺的需求分析</p><p> 圖書自
21、助服務(wù)平臺是針對圖書館的大量業(yè)務(wù)處理工作用計算機(jī)進(jìn)行全面現(xiàn)代化管理。主要包括讀者管理、書籍管理等幾個方面的功能,以實現(xiàn)用戶方便的查詢所需書籍、寫書評、提意見等需求。</p><p><b> (1)讀者管理</b></p><p> 讀者管理的概念是針對管理員而言,管理員有權(quán)查看系統(tǒng)的數(shù)據(jù)庫中有哪些用戶,已經(jīng)用戶的部分資料,比如ID、姓名、性別、電話等,但也有一些
22、涉及隱私的信息是不應(yīng)該被管理員看到的,比如登錄密碼,要查看這類信息,必須是DBA或者其他經(jīng)過充分授權(quán)的人才能查看。</p><p> 同時,在需要的情況下,管理員可以將制定的用戶從本系統(tǒng)中“刪除”,所謂刪除其實是將制定用戶在數(shù)據(jù)庫表中的狀態(tài)字段進(jìn)行改變,而并不是真正的刪除,要做真正的刪除,必須由DBA直接操作數(shù)據(jù)庫來完成。</p><p><b> (2)書籍管理</b
23、></p><p> 書籍管理也是針對管理員而言,首先就是圖書的入庫,入庫可以有兩種方式,一是DBA直接操作數(shù)據(jù)庫,在圖書表中直接添加記錄;二是由管理員在應(yīng)用程序中進(jìn)行入庫,通過直觀地輸入一些信息,比如書名、作者、出版社、ISBN等,而頁面上會有控制輸入合法性的函數(shù),保證管理員輸入的圖書信息是合法的。輸入完畢之后向數(shù)據(jù)庫中添加記錄。</p><p> 有時因為一些原因,需要修改已
24、入庫的圖書的信息,此時一般由管理員完成修改。</p><p> 有時因為一些原因,需要“刪除”一些圖書信息,所謂的刪除其實是將數(shù)據(jù)庫表中指定圖書的狀態(tài)設(shè)為不可見,即對用戶不可見,而不是真正的刪除,正如讀者管理部分一樣,要把圖書信息從數(shù)據(jù)庫中真正的刪除,應(yīng)該由DBA直接操作數(shù)據(jù)庫進(jìn)行刪除。</p><p><b> (3)其他功能</b></p>&l
25、t;p> 對讀者而言,進(jìn)入本系統(tǒng)的前提是成為一名本系統(tǒng)的注冊用戶,有兩種途徑可以實現(xiàn),一是又DBA直接操作數(shù)據(jù)庫,向用戶表中增加記錄;二是由用戶在系統(tǒng)的注冊頁面上填寫相關(guān)的注冊信息,從而成為本系統(tǒng)的用戶。讀者除了可以瀏覽圖書信息之外,還可以收藏指定的圖書,這樣,當(dāng)在圖書記錄很多的情況下讀者就不必一個一個找出自己想要了解的圖書,可以直接從個人的收藏夾中找到。</p><p> 如果讀者已經(jīng)讀過某本圖書,他
26、可以對指定的圖書寫書評,而其他用戶可以看到這些書評,方便大家交流讀書心得。</p><p> 任何一個系統(tǒng)都不可能是盡善盡美的,因此讀者可以針對使用本系統(tǒng)過程中發(fā)現(xiàn)的</p><p> 一些問題,包括功能上的、用戶體驗上的等等問題反饋給管理員,提出意見或建議,幫助本系統(tǒng)的設(shè)計開發(fā)人員不斷完善本系統(tǒng)。</p><p> 對管理員而言,有義務(wù)處理每一條用戶的反饋,
27、進(jìn)行合適的答復(fù)。</p><p> 作為絕大多數(shù)應(yīng)用系統(tǒng)都應(yīng)該有的功能,發(fā)布通知也是本系統(tǒng)要實現(xiàn)的功能之一,通知由管理員撰寫與發(fā)布,在用戶首頁和管理員首頁進(jìn)行展示。</p><p> 2.2 圖書自助服務(wù)平臺的可行性分析</p><p> 系統(tǒng)的可行性分析包括兩個詳細(xì)的部分:分析開發(fā)的新系統(tǒng)的必要性和可能性。必要性在前面系統(tǒng)初步調(diào)查中已經(jīng)做了詳細(xì)的分析,這里不
28、再贅述;可能性主要包括經(jīng)濟(jì)可能性、技術(shù)可能性和運(yùn)行可能性三個方面。</p><p> 經(jīng)濟(jì)可行性研究是對組織的經(jīng)濟(jì)現(xiàn)狀和投資能力進(jìn)行分析,對系統(tǒng)建設(shè)運(yùn)行和維護(hù)費(fèi)用進(jìn)行估算,對系統(tǒng)建成后取得的社會和經(jīng)濟(jì)效益進(jìn)行估計。</p><p> 技術(shù)可行性要考慮現(xiàn)有的技術(shù)條件是否能夠順利完成開發(fā)工作,軟硬件配置是否滿足開發(fā)的需求等。資料管理系統(tǒng)采用的是易語言開發(fā)語言,調(diào)試相對簡單,當(dāng)前的計算機(jī)硬件
29、配置也完全能滿足需求,因此在技術(shù)上是絕對可行的。</p><p> 運(yùn)行可行性是對組織結(jié)構(gòu)的影響,現(xiàn)有人員和機(jī)構(gòu)、設(shè)備設(shè)施和環(huán)境對系統(tǒng)的適應(yīng)性及人員的培訓(xùn)補(bǔ)充計劃的可行性。當(dāng)前我們單位信息化技術(shù)已經(jīng)相對普及,各類操作人員水平都有相當(dāng)?shù)母叨?,所以運(yùn)行上是可行性的。</p><p><b> 3 系統(tǒng)總體設(shè)計</b></p><p> 系統(tǒng)總
30、體設(shè)計一般包括系統(tǒng)設(shè)計、數(shù)據(jù)庫設(shè)計、開發(fā)及運(yùn)行環(huán)境的選擇等。</p><p><b> 3.1 系統(tǒng)設(shè)計</b></p><p> 3.1.1 系統(tǒng)功能設(shè)計</p><p> 系統(tǒng)功能分析是在系統(tǒng)開發(fā)的總體任務(wù)的基礎(chǔ)上完成的,本系統(tǒng)的功能主要有:</p><p> (1)讀者基本信息的輸入,包括讀者編號、讀者姓名
31、、讀者性別、電話號碼、登錄密碼、在系統(tǒng)中角色(普通讀者/管理員)、狀態(tài)。</p><p> (2)讀者信息的查詢、修改等。</p><p> (3)書籍信息的輸入,包括書籍編號,書名,ISBN(10位或13位),作者,出版社,出版日期,價格,庫存數(shù)量,簡介,狀態(tài)。</p><p> (4)書籍信息的查詢、修改。 </p><p> (
32、5)收藏信息:包括讀者ID,書名,收藏日期,收藏ID(自動生成)。</p><p> (6)反饋信息:包括讀者姓名,反饋內(nèi)容,是否處理,反饋日期,反饋ID(自動生成)。</p><p> (7)圖書評論:包括讀者姓名,書名,評論內(nèi)容。</p><p> (8)系統(tǒng)公告:包括公告內(nèi)容、公告日期、公告ID(自動生成)。</p><p>
33、對上述各項功能進(jìn)行集中、分塊,按照結(jié)構(gòu)化程序設(shè)計的要求,得到下圖1所示的系統(tǒng)功能模塊圖:</p><p> 圖1 系統(tǒng)功能模塊圖</p><p> 3.1.2 系統(tǒng)流程分析</p><p> 通過流程分析,可以得到一個比較清晰的系統(tǒng)運(yùn)行流程,系統(tǒng)流程圖如圖2所示:</p><p><b> 圖2 系統(tǒng)流程圖</b>
34、;</p><p><b> 3.2 數(shù)據(jù)庫設(shè)計</b></p><p> 3.2.1 數(shù)據(jù)庫概念設(shè)計</p><p> 根據(jù)對系統(tǒng)所做的需求分析和系統(tǒng)可行性分析,可以規(guī)劃出本系統(tǒng)中所使用的數(shù)據(jù)庫實體:用戶實體、圖書實體、收藏實體、反饋實體。</p><p> ?。?)用戶實體,包括用戶ID,姓名,性別,電話,密碼
35、,角色。用戶實體E-R圖如圖3所示:</p><p> 圖3 用戶實體E-R圖</p><p> (2)圖書實體,包括圖書ID,書名,作者,ISBN,出版社,出版日期,價格,數(shù)量。圖書實體如圖4所示:</p><p> 圖4 圖書實體E-R圖</p><p> ?。?)收藏實體,收藏實體包括收藏ID,書名,用戶名,收藏日期。收藏實體如圖
36、5所示:</p><p> 圖5 收藏實體E-R圖</p><p> (4)反饋實體,反饋實體包括反饋ID,反饋內(nèi)容,用戶名,是否處理,反饋日期。反饋實體如圖6所示:</p><p> 圖6 反饋實體E-R圖</p><p> 3.2.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)</p><p> 采用MySQL來完成圖書自助服務(wù)平臺
37、的數(shù)據(jù)庫,需將上面的數(shù)據(jù)庫的概念結(jié)構(gòu)轉(zhuǎn)化為SQL的數(shù)據(jù)庫所支持的實際數(shù)據(jù)模型,這也就是數(shù)據(jù)庫的邏輯結(jié)構(gòu)。圖書館管理信息管理系統(tǒng)數(shù)據(jù)庫中的表格的設(shè)計結(jié)果有以下的表格所表示:</p><p> (1)book 圖書信息表</p><p> 本表包括的字段有:圖書ID、書名、ISBN、作者、出版社、出版日期、價格、庫存、簡介、狀態(tài)。如表1所示:</p><p> 表
38、1 book 圖書信息表</p><p> (2)user 讀者信息表</p><p> 本表包括的字段有:用戶ID、姓名、性別、電話、密碼、角色、狀態(tài)。如表2所示:</p><p> 表2 user 讀者信息表</p><p> (3)store 收藏信息表</p><p> 本表包括的字段有:用戶I
39、D、收藏ID、圖書ID、收藏日期、書名、作者。如表3所示:</p><p> 表3 store 收藏信息表</p><p> (4)advice 讀者建議與反饋表</p><p> 本表包括的字段有:反饋ID、反饋內(nèi)容、姓名、處理狀態(tài)、反饋日期。如表4所示:</p><p> 表4 advice 讀者建議與反饋表</p&g
40、t;<p> (5)comment 圖書評論表</p><p> 本表包括的字段有:用戶ID、圖書ID、評論內(nèi)容、用戶姓名。如表5所示:</p><p> 表5 comment 圖書評論表</p><p> (6)notice 公告信息表</p><p> 本表包括的字段有:公告ID、公告內(nèi)容、公告日期。如表6所示:&
41、lt;/p><p> 表6 notice 公告信息表 </p><p> 得到上面的各項數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)以后,就可以設(shè)計出能夠滿足用戶需求的各種實體,以及他們之間的關(guān)系,為以后的邏輯結(jié)構(gòu)設(shè)計打下基礎(chǔ)。</p><p> 3.3 系統(tǒng)的
42、開發(fā)及運(yùn)行環(huán)境</p><p> 任何系統(tǒng)的開發(fā),最后必然是要在具體的開發(fā)及運(yùn)行環(huán)境中實現(xiàn),因此選擇合適的開發(fā)與運(yùn)行環(huán)境是非常必要的。</p><p> 3.3.1 編程語言的選擇</p><p> 本系統(tǒng)主要由Java編寫。Java是一種可以撰寫跨平臺應(yīng)用軟件的面向?qū)ο蟮某绦蛟O(shè)計語言,是由Sun Microsystems公司于1995年5月推出的Java程序
43、設(shè)計語言和Java平臺(即JavaSE, JavaEE, JavaME)的總稱。Java 技術(shù)具有卓越的通用性、高效性、平臺移植性和安全性,廣泛應(yīng)用于個人PC、數(shù)據(jù)中心、游戲控制臺、科學(xué)超級計算機(jī)、移動電話和互聯(lián)網(wǎng),同時擁有全球最大的開發(fā)者專業(yè)社群。</p><p> JSP(Java Server Pages)是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。JSP是在
44、傳統(tǒng)的網(wǎng)頁HTML文件中插入Java程序段和JSP標(biāo)記,從而形成JSP文件。 用JSP開發(fā)的Web應(yīng)用是跨平臺的,既能在Linux下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行。</p><p> 3.3.2 IDE的選擇</p><p> 本系統(tǒng)全部代碼都在Eclipse中完成。Eclipse 是一個開放源代碼的、基于Java的可擴(kuò)展開發(fā)平臺。就其本身而言它只是一個框架和一組服務(wù),用于通過插件組件
45、構(gòu)建開發(fā)環(huán)境。Eclipse以其強(qiáng)大的功能在開發(fā)者中迅速占領(lǐng)了大量份額,目前已經(jīng)成為Java開發(fā)的首選IDE。</p><p> 3.3.3 數(shù)據(jù)庫的選擇</p><p> 本系統(tǒng)采用MySQL作為后臺數(shù)據(jù)庫。MySQL是一個小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),從其問世之初便受到了廣泛的歡迎。MySQL的最大特點是輕巧的體積與強(qiáng)大的功能,并且其大部分版本是開源的,目前已經(jīng)成為大量網(wǎng)站與企業(yè)應(yīng)用的
46、首選數(shù)據(jù)庫。</p><p> 3.3.4 Web服務(wù)器的選擇</p><p> 本系統(tǒng)采用Tomcat作為Web服務(wù)器。Tomcat 是一個輕量級應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。</p><p><b> 4 系統(tǒng)詳細(xì)設(shè)計</b></p><p>
47、 在本系統(tǒng)的開發(fā)過程中,系統(tǒng)的詳細(xì)設(shè)計需要考慮的有一下三個方面:項目的總體結(jié)構(gòu),普通用戶的操作,管理員的操作,數(shù)據(jù)庫連接的設(shè)計。</p><p> 4.1 項目總體結(jié)構(gòu)</p><p> 在Eclipse中新建一個項目,項目類型為“Dynamic Web Project”,項目名稱為“BM”,意指“Book Management”,項目的整體結(jié)構(gòu)如圖7所示:</p>&
48、lt;p><b> 圖7 項目整體結(jié)構(gòu)</b></p><p> 在項目的src文件夾中新建幾個代表結(jié)構(gòu)體的類,分別是:</p><p> BookInfo.java,UserInfo.java,Store.java,Advice.java,Comment.java,Notice.java ;</p><p> 他們代表了圖書、用
49、戶、收藏、反饋、書評、公告等實體。</p><p> 系統(tǒng)主界面如圖8所示:</p><p><b> 圖8 系統(tǒng)首頁</b></p><p> 在主界面上,用戶可輸入用戶名和密碼可以登錄,頁面上的Javascript函數(shù)會判斷用戶是否輸入了內(nèi)容,若沒輸入就點擊登錄按鈕則會進(jìn)行提示。</p><p> 若用戶還沒
50、注冊過,則可以點擊注冊按鈕進(jìn)入注冊頁面,填寫相應(yīng)的個人信息。注冊頁面如圖9所示:</p><p><b> 圖9 注冊頁面</b></p><p> 用戶完成注冊后,后臺的方法會在數(shù)據(jù)庫的user表中增加一條相應(yīng)的記錄。</p><p> 完成注冊后可以重新登錄,后臺的方法會根據(jù)用戶ID和數(shù)據(jù)庫中與ID對應(yīng)的角色來判斷當(dāng)前正在登錄的是普通
51、用戶還是管理員,然后決定下一步要跳轉(zhuǎn)的頁面。</p><p> 4.2 普通用戶的操作</p><p> 如果是普通用戶,則跳轉(zhuǎn)到讀者首頁,其界面如圖10所示:</p><p><b> 圖10 讀者首頁</b></p><p> 此時用戶可以選擇想要進(jìn)行的操作,包括瀏覽圖書信息、修改個人信息等。</p&g
52、t;<p> 以“瀏覽圖書信息”為例:點擊其超鏈接后進(jìn)入圖書目錄界面,如圖12所示:</p><p> 圖11 讀者瀏覽圖書信息的頁面</p><p> 每一條目錄代表一種圖書,展示了編號、書名、作者、出版社等信息。選中一條記錄之后,可以查看簡介,或者收藏。查看簡介的界面如圖13所示:</p><p> 圖12 查看圖書簡介與寫書評的頁面<
53、;/p><p> 在圖書簡介的頁面上,如果用戶曾經(jīng)讀過這本書,可以寫下自己的書評,供其他讀者參考,程序會在數(shù)據(jù)庫的comment表中添加一條評論記錄。</p><p> 如果用戶有什么意見、建議或者任何關(guān)于本系統(tǒng)的疑問,則可以在讀者首頁上點擊“建議與反饋“,進(jìn)入讀者反饋頁面寫下自己的反饋內(nèi)容,如圖13所示:</p><p> 圖13 讀者填寫反饋頁面</p&
54、gt;<p> 提交反饋之后,程序會在數(shù)據(jù)庫的advice表中添加一條記錄。</p><p> 4.3 管理員的操作</p><p> 如果是管理員,則跳轉(zhuǎn)到管理員首頁,其界面如圖14所示:</p><p><b> 圖14 管理員首頁</b></p><p> 圖書信息維護(hù)的頁面同讀者瀏覽圖書的
55、頁面基本一致,區(qū)別在于頁面底部的按鈕,因為管理員可以添加、修改或者刪除圖書,如圖15所示:</p><p> 圖15 管理員對圖書信息具有的三種操作權(quán)限按鈕</p><p> 添加記錄功能如圖16所示:</p><p> 圖16 新增圖書信息的頁面</p><p> 由于圖書信息有著嚴(yán)格的格式格式規(guī)范,比如ISBN、出版日期等,因此必
56、須確保管理員輸入的內(nèi)容的合法性,因此在本頁面的Javascript函數(shù)中定義了一個用正則表達(dá)式(Regular Expression)驗證輸入內(nèi)容合法性的方法。正則表達(dá)式是對字符串操作的一種邏輯公式,就是用事先定義好的一些特定字符、及這些特定字符的組合,組成一個“規(guī)則字符串”,這個“規(guī)則字符串”用來表達(dá)對字符串的一種過濾邏輯。驗證輸入合法性的部分代碼參見附錄。</p><p> 如果輸入的格式有誤,比如ISBN
57、的格式不正確,則彈出提示框進(jìn)行提示,如圖17所示:</p><p> 圖17 輸入內(nèi)容格式有誤時給出的提示</p><p> 只有當(dāng)每一個輸入框的值都通過合法性檢查之后,才能向數(shù)據(jù)庫的book表添加一條記錄。</p><p> 管理員還可以選擇查看系統(tǒng)有哪些用戶,以及他們的一些注冊信息,值得一提的是,管理員只能看到用戶的性別、電話等信息,而不能看到密碼,因為從
58、管理員的角色來說,他的職責(zé)僅僅是對自助服務(wù)平臺進(jìn)行一些日常維護(hù),甚至嚴(yán)格來說用戶的電話號碼也是不應(yīng)該讓管理員看到的。對于密碼、電話等可能涉及個人隱私的信息,其查看與操作的權(quán)限只能限于平臺的總負(fù)責(zé)人或者經(jīng)過得到授權(quán)的數(shù)據(jù)庫管理員。管理用戶信息的界面如圖18所示:</p><p> 圖18 管理員管理用戶信息的頁面</p><p> 自助服務(wù)平臺的用戶與管理員交互功能體現(xiàn)在讀者提出反饋與管
59、理員處理反饋的功能上,讀者的每一條反饋都會記錄在數(shù)據(jù)庫的advice表中,該表中有一個字段為isResponse,意為“是否處理“,在管理員查看并答復(fù)這條反饋之前,isResponse字段的值為“no”,頁面上顯示為“未處理”,管理員查看并答復(fù)后,該字段的值變?yōu)椤皔es”,頁面上顯示為“已處理”。管理員查看反饋的界面如圖19所示:</p><p> 圖19 管理員查看用戶反饋的頁面</p><
60、;p> 處理反饋的界面如圖20所示:</p><p> 圖20 管理員對反饋進(jìn)行答復(fù)的頁面</p><p> 4.4 數(shù)據(jù)庫連接設(shè)計</p><p> Java提供了與底層數(shù)據(jù)庫系統(tǒng)緊密的連接。Java支持不同的關(guān)系數(shù)據(jù)庫管理系統(tǒng)并充分發(fā)揮每一個數(shù)據(jù)庫的特長。開發(fā)人員和利用ODBC來確定數(shù)據(jù)源,則JDBC-ODBC就能通過數(shù)據(jù)源來對數(shù)據(jù)庫里的數(shù)據(jù)進(jìn)行操
61、作。</p><p> 而具體的連接哪個數(shù)據(jù)庫,ODBC沒有設(shè)置限定,從而使設(shè)計者能夠應(yīng)用自己比較熟悉的數(shù)據(jù)庫。</p><p> 以圖21為例進(jìn)行說明:</p><p> 圖21 Java數(shù)據(jù)庫連接示意圖</p><p> 值得一提的是Java擁有專門用于處理數(shù)據(jù)庫的包java.sql.*。它能操縱關(guān)系數(shù)據(jù)庫的數(shù)據(jù)并可以編寫SQL語
62、言。利用該對象可以修改、更新、插入、刪除、滾頁、打印數(shù)據(jù)窗口直接管理數(shù)據(jù)庫的交互與控制。在本系統(tǒng)開發(fā)過程中大多數(shù)報表均使用此對象生成,使用其操縱關(guān)系數(shù)據(jù)庫的數(shù)據(jù)十分方便、快捷。它是一個支持?jǐn)?shù)據(jù)操縱的封裝性很好對象。</p><p> java.sql 包中包含用于以下方面的 API。</p><p> 通過 DriverManager 實用程序建立與數(shù)據(jù)庫的連接。</p>
63、<p> DriverManager 類:建立與驅(qū)動程序的連接。</p><p> Driver 接口:提供用來注冊和連接基于 JDBC 技術(shù)(“JDBC 驅(qū)動程序”)的驅(qū)動程序的 API,通常僅由 DriverManager 類使用。</p><p> Statement:用于發(fā)送基本 SQL 語句。</p><p> PreparedStat
64、ement:用于發(fā)送準(zhǔn)備好的語句或基本 SQL 語句(派生自 Statement)。</p><p> Connection 接口:提供創(chuàng)建語句以及管理連接及其屬性的方法。</p><p> ResultSet 接口。</p><p> ParameterMetaData 接口:提供有關(guān) PreparedStatement 命令的參數(shù)的信息。</p>
65、;<p> SQLException:由大多數(shù)方法在訪問數(shù)據(jù)出問題時拋出,以及因為其他原因由其他方法拋出。</p><p><b> 5、結(jié)束語</b></p><p> 在本次畢業(yè)設(shè)計中,我遇到了各種各樣的困難,但是在解決這些困難的過程中,還是學(xué)到了很多知識。</p><p> 在系統(tǒng)開發(fā)的過程中,重要的是分析系統(tǒng)、建立
66、起系統(tǒng)模型。在分析一個系統(tǒng)前,必須要對將要開發(fā)的系統(tǒng)所涉及到的各方面知識有一個認(rèn)識,然后將系統(tǒng)的模型建立起來。</p><p> 在編碼中,良好的編程風(fēng)格與習(xí)慣是提高工作效率的一個重要方面,而且良好的編程風(fēng)格與習(xí)慣也是使軟件便于維護(hù)的基礎(chǔ)。我認(rèn)為良好的編程風(fēng)格與習(xí)慣主要是注重落實程序的模塊化、必要的注釋、完備的設(shè)計文檔三個方面。所謂模塊化就是使程序的功能實現(xiàn)分成多個單獨(dú)的功能模塊,而不能在一大段代碼中實現(xiàn)多個功
67、能,如果這樣做,別人很難讀懂你的程序。必要的注釋,是為了讓別人能讀懂自己寫的代碼,同時也讓自己更容易理解。</p><p> 總結(jié)這次畢業(yè)設(shè)計過程,它給我感受最深的有四點:</p><p> (1) 進(jìn)行系統(tǒng)設(shè)計時,要能靜下心來,盡可能考慮更多的方面。</p><p> (2) 不要試圖自己發(fā)明工具,現(xiàn)有的工具完全能滿足開發(fā)的需要。</p>&l
68、t;p> (3) 要善于同別人交流與分享。</p><p> (4) 要多看、多想、多問。</p><p><b> 參考文獻(xiàn):</b></p><p> [l] 孟莉. 字化圖書館對培養(yǎng)創(chuàng)新人才的支撐作用[J]. 京林業(yè)大學(xué)學(xué)報[社會科學(xué)版],2004,(51):31-33.</p><p> [2]
69、薛貞芳. 關(guān)于地方高校圖書館數(shù)字化建設(shè)的思考[J]. 安徽大學(xué)學(xué)報,2002,(06):123-124.</p><p> [3] 徐方. 鄧敏. 內(nèi)容管理系統(tǒng)的發(fā)展與應(yīng)用[J]. 孝感學(xué)院學(xué)報,2007,(03):70-72.</p><p> [4] 李剛. 網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù)MySQL[M]. 北京:北京大學(xué)出版社,2008:25-30.</p><p>
70、[5] 王珊、薩師煊. 數(shù)據(jù)庫系統(tǒng)概論[M]. 第4版. 北京:高等教育出版社,2010:5-47.</p><p> [6] 侯天超. Web編程基礎(chǔ)[M]. 北京:電子工業(yè)出版社,2011:13-17.</p><p> [7] 吳敦義. MySQL原理與Web系統(tǒng)開發(fā)[M]. 北京:清華大學(xué)出版社,2009:5-20.</p><p> [8] 馬建紅、
71、李占波. JSP應(yīng)用與開發(fā)技術(shù)[M]. 北京:清華大學(xué)出版社,2011:4-56. </p><p> [9] 劉智勇、王文強(qiáng). Javascript從入門到精通[M]. 北京:化學(xué)工業(yè)出版社,2009:5-40.</p><p> [10] 耿祥義. Java2實用教程[M]. 北京:清華大學(xué)出版社,2006:2-25.</p><p> [11] Doug
72、las Crockford. JavaScript: The Good Parts[M]. 南京:東南大學(xué)出版社,2009:4-20.</p><p> [12] 余晟. 正則指引[M]. 北京:電子工業(yè)出版社,2012:6-65.</p><p> [13] Matry Hall. Servlet與JSP核心編程[M]. 北京:清華大學(xué)出版社,2009:5-26.</p>
73、<p><b> 致謝</b></p><p> 感謝學(xué)校以認(rèn)真負(fù)責(zé)的態(tài)度為我們組織這次畢業(yè)設(shè)計以及畢業(yè)論文答辯.你們的嚴(yán)格把關(guān),對我們來說有很大的壓力,在這種壓力下促使我們以最快的融入到軟件開發(fā)理論的應(yīng)用中去,通過這次鍛煉,使我們的系統(tǒng)開發(fā)水平各個方面都有了較大的進(jìn)步.由此積累的經(jīng)驗將對我們以后的學(xué)習(xí)和生活產(chǎn)生幫助.</p><p> 感謝我的指
74、導(dǎo)老師,在畢業(yè)設(shè)計時幫助選題,在設(shè)計過程中提出了許多好的建議和意見,同時他的專業(yè)知識和思維方式也給我很大的啟發(fā).</p><p> 附錄 系統(tǒng)設(shè)計核心代碼</p><p><b> 1.?dāng)?shù)據(jù)庫建表語句</b></p><p> 創(chuàng)建圖書信息表 book</p><p> CREATE TABLE `book`
75、(</p><p> `BOOK_ID` varchar(20) NOT NULL,</p><p> `BOOK_NAME` varchar(50) DEFAULT NULL,</p><p> `ISBN` varchar(40) DEFAULT NULL,</p><p> `AUTHOR` varchar(30) DEFAUL
76、T NULL,</p><p> `PUB` varchar(40) DEFAULT NULL,</p><p> `DATE` varchar(15) DEFAULT NULL,</p><p> `PRICE` float(10,0) DEFAULT NULL,</p><p> `AMOUNT` int(11) DEFAULT
77、NULL,</p><p> `DEMO` varchar(1000) DEFAULT NULL,</p><p> `STATUS` varchar(2) DEFAULT NULL,</p><p> PRIMARY KEY (`BOOK_ID`)</p><p> ) ENGINE=InnoDB DEFAULT CHARSET=g
78、bk;</p><p> 創(chuàng)建用戶信息表 userCREATE TABLE `user` (</p><p> `STU_ID` varchar(20) NOT NULL,</p><p> `STU_NAME` varchar(40) DEFAULT NULL,</p><p> `SEX` varchar(10) DEFAUL
79、T NULL,</p><p> `TEL` varchar(20) DEFAULT NULL,</p><p> `PASSWORD` varchar(20) DEFAULT NULL,</p><p> `ROLE` varchar(10) DEFAULT NULL,</p><p> `STATUS` varchar(2) DE
80、FAULT NULL,</p><p> PRIMARY KEY (`STU_ID`)</p><p> ) ENGINE=InnoDB DEFAULT CHARSET=gbk;</p><p> 創(chuàng)建收藏信息表 storeCREATE TABLE `store` (</p><p> `STU_ID` varchar(20) N
81、OT NULL,</p><p> `BOOK_ID` varchar(20) NOT NULL,</p><p> `STORE_DATE` date DEFAULT NULL,</p><p> `BOOK_NAME` varchar(50) DEFAULT NULL,</p><p> `STORE_ID` varchar(20
82、) NOT NULL,</p><p> `AUTHOR` varchar(30) DEFAULT NULL,</p><p> PRIMARY KEY (`STORE_ID`)</p><p> ) ENGINE=InnoDB DEFAULT CHARSET=gbk;</p><p> 創(chuàng)建反饋信息表adviceCREATE TA
83、BLE `advice` (</p><p> `advice_id` varchar(20) NOT NULL,</p><p> `advice` varchar(1000) DEFAULT NULL,</p><p> `stu_name` varchar(40) DEFAULT NULL,</p><p> `is_respo
84、nse` varchar(2) DEFAULT NULL,</p><p> `date` varchar(15) DEFAULT NULL,</p><p> PRIMARY KEY (`advice_id`)</p><p> ) ENGINE=InnoDB DEFAULT CHARSET=gbk;</p><p> 創(chuàng)建書評信息
85、表comment CREATE TABLE `comment` (</p><p> `stu_id` varchar(20) DEFAULT NULL,</p><p> `book_id` varchar(20) DEFAULT NULL,</p><p> `content` varchar(1000) DEFAULT NULL,</p>
86、<p> `stu_name` varchar(40) DEFAULT NULL</p><p> ) ENGINE=InnoDB DEFAULT CHARSET=gbk;</p><p> 創(chuàng)建系統(tǒng)公告信息表 noticeCREATE TABLE `notice` (</p><p> `notice_id` varchar(20) NOT
87、NULL,</p><p> `notice` varchar(1000) DEFAULT NULL,</p><p> `notice_date` varchar(15) DEFAULT NULL</p><p> ) ENGINE=InnoDB DEFAULT CHARSET=gbk;</p><p> 2.結(jié)構(gòu)體通用的代碼格式&
88、lt;/p><p> public class BookInfo {</p><p> String bookId;</p><p> String bookName;</p><p> String isbn;</p><p> public void setBookId(String bookId){<
89、/p><p> this.bookId=bookId;</p><p><b> }</b></p><p> public String getBookId(){</p><p> return bookId;</p><p><b> }</b></p>
90、<p> public void setBookName(String bookName){</p><p> this.bookName=bookName;</p><p><b> }</b></p><p> public String getBookName(){</p><p> ret
91、urn bookName;</p><p><b> }</b></p><p> public void setIsbn(String isbn){</p><p> this.isbn=isbn;</p><p><b> }</b></p><p> publ
92、ic String getIsbn(){</p><p> return isbn;</p><p><b> }</b></p><p><b> }</b></p><p> 3.用正則表達(dá)式驗證輸入合法性的JavaScript函數(shù)</p><p> funct
93、ion checkInput(){</p><p> var t1=/^\d{4,10}$/; //4-10個數(shù)字</p><p> if(t1.test(bookid.value)==false){</p><p> alert('請輸入正確的編號');return;</p><p><b> }<
94、/b></p><p> var t3a=/^\d{3}-\d{1}-\d{3}-\d{5}-\d{1}$/; //ISBN-13</p><p> var t3b=/^\d{1}-\d{5}-\d{3}-\d{1}$/; //ISBN-10</p><p> if(t3a.test(isbn.value)==false&&t
95、3b.test(isbn.value)==false){</p><p> alert('請輸入正確的ISBN');return;</p><p><b> }</b></p><p> var t6=/^[12][09][0-9][0-9]-[01][0-9]-[0123][0-9]$/;</p><
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 圖書管理信息系統(tǒng)設(shè)計畢業(yè)論文
- 圖書管理信息系統(tǒng)課程設(shè)計
- 圖書管理信息系統(tǒng)需求分析
- 畢業(yè)設(shè)計-- 基于web的圖書管理信息系統(tǒng)(含全套資料)
- 畢業(yè)設(shè)計-- 基于WEB的圖書管理信息系統(tǒng)(含全套資料).doc
- 圖書館管理信息系統(tǒng)畢業(yè)設(shè)計
- 圖書館管理信息系統(tǒng)畢業(yè)設(shè)計
- 圖書管理信息系統(tǒng)的設(shè)計與優(yōu)化.pdf
- 開題報告--圖書管理信息系統(tǒng)設(shè)計與開發(fā)
- 畢業(yè)論文——基于web的圖書管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計---圖書管理信息系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計——圖書管理信息系統(tǒng)
- 基于eclipse的圖書管理信息系統(tǒng)設(shè)計與實現(xiàn)
- 圖書館圖書管理信息系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 圖書管理信息系統(tǒng)設(shè)計與開發(fā)-信息管理系統(tǒng)畢業(yè)論文開題報告
- 圖書管理信息系統(tǒng)設(shè)計與開發(fā)-信息管理系統(tǒng)畢業(yè)論文開題報告
- 課程設(shè)計---圖書管理信息系統(tǒng)的分析與設(shè)計
- 99542.圖書管理信息系統(tǒng)的分析與設(shè)計
- [優(yōu)秀畢業(yè)設(shè)計精品] 圖書館管理信息系統(tǒng)
- 畢業(yè)設(shè)計管理信息系統(tǒng)設(shè)計
評論
0/150
提交評論