基于Web的圖書館管理系統(tǒng)_第1頁
基于Web的圖書館管理系統(tǒng)_第2頁
基于Web的圖書館管理系統(tǒng)_第3頁
基于Web的圖書館管理系統(tǒng)_第4頁
基于Web的圖書館管理系統(tǒng)_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、.容提要本圖書館系統(tǒng)基于MVC設(shè)計模式,采用四層結(jié)構(gòu),主要包括:表現(xiàn)層、控制層、業(yè)務(wù)層、持久層。系統(tǒng)設(shè)計使用SSH(Struts2、Hibernate和Spring)三種框架,共分為圖書檢索、學(xué)生信息、通知公告、圖書借閱、數(shù)據(jù)管理五個功能模塊。在現(xiàn)今圖書館管理系統(tǒng)已有功能的基礎(chǔ)上,本設(shè)計添加了記錄圖書借閱次數(shù)功能,為學(xué)生檢索圖書和圖書館采購新書提供參考。論文詳細介紹圖書館管理的系統(tǒng)功能、業(yè)務(wù)邏輯和框架、進行數(shù)據(jù)分析和設(shè)計過程,并完成的開發(fā)與實現(xiàn)。關(guān)鍵詞圖書管理,Java,MVC模式,SSH框架一、概述當(dāng)今是一個信息化時代,隨著計算機網(wǎng)絡(luò)技術(shù)的發(fā)展、數(shù)字信息技術(shù)的廣泛應(yīng)用,圖書館正在向數(shù)字化、電

2、子化和虛擬化的方向發(fā)展。大多數(shù)院校已經(jīng)采用電子化的圖書管理方式,通過軟件和進行高效的圖書管理活動。使用提供服務(wù)和管理圖書有很多優(yōu)點,比如:檢索方便、安全可靠、信息存儲量大、成本低等。這些優(yōu)點可以提高圖書館的管理效率,方便學(xué)生借閱圖書和查看個人信息,也利于圖書館和其他部門之間信息的傳遞和溝通,對于學(xué)校的科學(xué)化、正規(guī)化管理有著重要作用。一個圖書館的正常運轉(zhuǎn)需要處理大量的信息,有所有的學(xué)生信息、圖書信息,在借閱過程中需要記錄的借閱信息、預(yù)約信息,以及提供的其他服務(wù)的相關(guān)信息。如此多的數(shù)據(jù)處理僅靠人工顯然效率太低,而且極容易出錯,因此智能化、系統(tǒng)化、信息化的圖書管理系統(tǒng)十分重要。為了滿足圖書館需要的各

3、項服務(wù),必須有方便友好的視圖界面、簡單易學(xué)的操作過程、清晰條例的數(shù)據(jù)條目和穩(wěn)定安全的數(shù)據(jù)庫管理。目前的網(wǎng)絡(luò)開發(fā)中越來越多的應(yīng)用了框架和一些成熟的開發(fā)模式,這種方法簡化了開發(fā)過程,提高了開發(fā)效率。在使用相應(yīng)的框架和開發(fā)模式后,開發(fā)人員可以根據(jù)框架要求直接去創(chuàng)建相應(yīng)的組件,把主要的精力放在具體項目業(yè)務(wù)邏輯的實現(xiàn),而非花費時間設(shè)計系統(tǒng)結(jié)構(gòu),進行大量的重復(fù)操作。安全性是設(shè)計最基本的原則,開發(fā)者要做好關(guān)鍵數(shù)據(jù)的加密、防止惡意的請求等工作,保證的正常運轉(zhuǎn)。同時頁面的表單部分必須恰當(dāng)?shù)氖褂抿炞C,防止用戶的錯誤操作導(dǎo)致系統(tǒng)拋出異常。評價好壞的另一個重要標(biāo)準(zhǔn)是能不能方便的滿足用戶的需求,即用戶使用最簡單的操作方

4、式獲取最準(zhǔn)確的信息,享受最快捷的服務(wù)。因此在設(shè)計時一定要以滿足用戶的需求為第一原則,時刻考慮用戶能夠利用開發(fā)者所設(shè)計的操作步驟使用的功能,避免太過華麗、繁雜的頁面使用戶無法在短時間找到獲取自己想要的信息。二、相關(guān)技術(shù)簡介2.1 面向?qū)ο缶幊趟枷朊嫦驅(qū)ο缶幊蹋∣bject Oriented Programming,OOP)是一種計算機編程架構(gòu),同時也是程序開發(fā)的方法。對象指類的集合,它將對象作為程序的基本單元,將程序和數(shù)據(jù)封裝其中,以提高軟件的重用性、靈活性和擴展性。面向?qū)ο蟪绦蛟O(shè)計可看做一種在程序中包含各種獨立而又互相調(diào)用的對象的思想,每一個對象都能夠接受數(shù)據(jù)、處理數(shù)據(jù)并將數(shù)據(jù)傳達給其他對象。

5、其中,數(shù)據(jù)抽象封裝,繼承,動態(tài)綁定是三個最基本的概念。2.2 MVC模式簡介MVC模式分為3個部分。M是Model,表示數(shù)據(jù)模型,主要完成系統(tǒng)的邏輯處理,通??墒褂每芍赜玫腏avaBean來完成業(yè)務(wù)邏輯。V是View,表示用戶界面試圖,主要完成與用戶的交互,可以使用Jsp、HTML文件。C是Controller,表示控制器,主要建立模型與視圖之間的關(guān)聯(lián),可以使用Servlet來接受用戶的請求并對用戶進行響應(yīng)。MVC有如下特點:(1) 多個視圖可以對應(yīng)一個模型;(2) 模型返回的數(shù)據(jù)和顯示邏輯分離;(3) 應(yīng)用被分隔為3層,降低了各層之間的耦合,提供了應(yīng)用的可控制性;(4) MVC更符合軟件工程

6、化管理的思想。2.3 SSH框架說明SSH是Java的Web開發(fā)中常用的3個框架,分別代表Struts2、Spring、Hibernate。Struts2是Java企業(yè)級Web應(yīng)用的可擴展性的框架,是WebWork和Struts社區(qū)合并后的產(chǎn)物。它提供了對MVC的一個清晰的實現(xiàn),包含了很多參與對所有請求進行處理的關(guān)鍵組件,如攔截器、OGNL表達式語言、堆棧等。Spring是輕量級的控制反轉(zhuǎn)和面向切面的容器框架,是為解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的。使用控制反轉(zhuǎn)技術(shù),一個對象依賴的其他對象會通過別動的方式傳遞進來而不是對象自己創(chuàng)建或查找依賴對象,促進了各部分的低耦合。面向切面技術(shù)允許通過分離應(yīng)用

7、的業(yè)務(wù)邏輯與系統(tǒng)級服務(wù)進行聚性的開發(fā),從而提高程序的運行效率。Hiberante是開源的對象關(guān)系映射框架,它對JDBC進行了輕量級的對象封裝,使開發(fā)人員使用面向?qū)ο缶幊趟季S來操縱數(shù)據(jù)庫。延遲加載機制是該框架非常重要的一個設(shè)計。這種初始化策略旨在一個對象調(diào)用它的一對多或者多對多時才將關(guān)系對象讀取出來,只進行很少的數(shù)據(jù)庫操作請求,因此可以明顯的提升數(shù)據(jù)處理性能。2.4 AJAX簡介AJAX(Asynchronous JavaScript and XML),指一套綜合了多項技術(shù)的瀏覽器端網(wǎng)頁開發(fā)技術(shù),可以創(chuàng)建更好更快以及交互性更強的Web應(yīng)用程序的技術(shù)。AJAX通過使用JavaScript的XMLH

8、ttpRequest對象來直接與服務(wù)器進行通信,在不重載頁面的情況器與Web服務(wù)器交換數(shù)據(jù)。2.5 DIV+CSS技術(shù)div+css是一種網(wǎng)頁的布局方法,它有別于傳統(tǒng)的HTML網(wǎng)頁設(shè)計語言中的表格定位方式,可以實現(xiàn)網(wǎng)頁頁面容與表現(xiàn)相分離。使用div+css布局,頁面代碼精簡,結(jié)構(gòu)清晰,同時也方便搜索引擎的搜索。這種方法可以將css文件和html分開,有些頁面會重復(fù)利用到一些css格式,而網(wǎng)頁瀏覽時會記錄一部分css格式,因此用戶再次訪問或在同一切換頁面時可以提高代碼的重用率,提高加載速度。三、需求分析3.1 系統(tǒng)功能根據(jù)一般圖書館的需要,并結(jié)合本系統(tǒng)的具體功能,設(shè)計需求共分為以下幾部分:(1)

9、圖書檢索:學(xué)生或職工可以進行普通檢索、分類檢索、借閱次數(shù)檢索。普通檢索為選擇檢索條件并輸入關(guān)鍵詞后進行檢索,分類檢索為根據(jù)圖書類型查看圖書列表,借閱次數(shù)檢索為根據(jù)圖書被借閱的次數(shù)排序并顯示圖書列表。(2)學(xué)生信息:實現(xiàn)學(xué)生登陸、讀者留言、個人信息、購書推薦功能學(xué)生登錄為學(xué)生輸入學(xué)號和密碼登錄,未登錄時不能使用讀者留言、查看個人信息和購書推薦的功能;讀者留言為學(xué)生登錄后輸入留言主題和容進行留言;查看個人信息為學(xué)生登錄后產(chǎn)看個人學(xué)院、專業(yè)、借閱條目等信息,并可以修改登錄密碼;購書推薦為學(xué)生登錄后填寫推薦的圖書的信息。(3)公告通知:學(xué)生或職工可以查看催還通知、預(yù)約通知、學(xué)生推薦、新書推薦、新聞通告

10、等信息。催還通知為顯示催還列表;預(yù)約通知為顯示預(yù)約列表;學(xué)生推薦為顯示學(xué)生推薦的圖書列表;新書推薦為圖書館推薦新購的圖書列表;新聞通告為顯示圖書館的新聞和通告;(4)圖書借還:實現(xiàn)職工登錄、借書、還書、續(xù)借、掛失功能職工登陸為職工輸入序號和密碼登錄,未登錄不能使用借書、換書、預(yù)約、掛失等功能;借書、還書、續(xù)借、掛失為職工登錄后輸入學(xué)生學(xué)號和圖書編號完成相應(yīng)的操作。(5)數(shù)據(jù)管理:實現(xiàn)系統(tǒng)管理員登錄、圖書管理、學(xué)生管理、信息功能系統(tǒng)管理員登錄為系統(tǒng)管理員輸入員工編號和密碼登錄,未登錄不能使用其他數(shù)據(jù)管理的功能;圖書管理為對圖書信息進行增、刪、改、查;學(xué)生管理為員對學(xué)生信息進行增、刪、改、查;信息

11、更改為系統(tǒng)管理員更改新聞公告、新書推薦中的數(shù)據(jù)信息。(6)信息檢索幫助:該功能為的必要組成部分,可以幫助用戶方便快捷的查找所需的信息,并向用戶提供必要的幫助。所需功能如圖3-1所示。圖3-1 圖書管理功能圖3.2 性能環(huán)境操作系統(tǒng):Windows XP或Windows 7虛擬機:jdk-6-win-i586瀏覽器:FireFox2.0或IEWeb服務(wù)器:Apache Tomcat 6.0數(shù)據(jù)庫:MySql Server 6.0工作平臺:MyEclipse 6.53.3 可行性分析開發(fā)所需軟件和開發(fā)包均可通過網(wǎng)絡(luò)下載獲取,Windows操作系統(tǒng)是最常用的計算機操作系統(tǒng),就目前的開發(fā)技術(shù)和開發(fā)環(huán)境

12、所設(shè)計系統(tǒng)的功能應(yīng)該能夠達到,利用現(xiàn)有的技術(shù)在規(guī)定期限基本能夠完成。四、數(shù)據(jù)庫設(shè)計4.1 E-R圖設(shè)計的數(shù)據(jù)存儲使用MySQL,數(shù)據(jù)E-R下圖所示所示。圖4-1 借閱、違規(guī)記錄E-R圖圖4-2 預(yù)約記錄E-R圖圖4-3 職工E-R圖圖4-4 留言記錄E-R圖4.2關(guān)系描述設(shè)計根據(jù)以上實體圖和E-R圖,經(jīng)過轉(zhuǎn)換導(dǎo)出各個關(guān)系:學(xué)生(學(xué)號,性別,學(xué)院,專業(yè),結(jié)束權(quán)限)圖書(編號,名稱,作者,類型,狀態(tài),借閱次數(shù))職工(編號,密碼,等級)借書記錄(編號,學(xué)號,圖書編號,時間,截至?xí)r間,狀態(tài),續(xù)借)違規(guī)記錄(編號,學(xué)號,圖書編號,繳納,罰金,原因,時間)留言(編號,學(xué)號,密碼,主題,容)五、實現(xiàn)過程在完

13、成需求分析和數(shù)據(jù)庫設(shè)計之后,配置JDK環(huán)境,導(dǎo)入相應(yīng)的開發(fā)包,并按照以下步驟開始進行設(shè)計的具體實現(xiàn)。5.1 界面設(shè)計根據(jù)需求分析所提到功能并結(jié)合實際情況,需要創(chuàng)建首頁、檢索頁面、學(xué)生服務(wù)相關(guān)頁面、新聞公告頁面、圖書借還頁面、數(shù)據(jù)管理頁面、導(dǎo)航頁面,其中頁面公用的部分可以單獨創(chuàng)建,其他頁面直接引用即可。5.1.1公用部分公用部分有頁面上端的狀態(tài)欄、主題圖片和導(dǎo)航條,其中導(dǎo)航條設(shè)計成動態(tài)顯示即鼠標(biāo)移到顯示所含列表,使得界面更友好,改善用戶的體驗感受。其中部分JavaScript代碼如下:$(function()$('.item_first').hover(function()$($

14、(this).next().show();,function()$($(this).next().hide();).animate().stop(true););5.1.2 首頁和地圖首頁是的門面,既需要整體的風(fēng)格,同時也應(yīng)提供必要的服務(wù)。在首頁設(shè)計了快速登錄、新書推薦、圖書館新聞公告、快速檢索、導(dǎo)航按鈕等功能。其中新書推薦和圖書館新聞公告使用JavaScript設(shè)計成動態(tài)畫面,增加首頁的信息量,部分JavaScript代碼如下:function scrolling()if(o.scrollTop%lh!=0)o.scrollTop +=1;if(o.scrollTop>=o.scrol

15、lHeight/2) o.scrollTop = 0;elseclearInterval(t);setTimeout(start,delay);效果如圖5-1所示。圖5-1 系統(tǒng)首頁首頁除了標(biāo)題、導(dǎo)航欄等共用部分之外,在左側(cè)的快速登錄部分可以學(xué)生或者管理員可以直接登錄,登錄后分別跳轉(zhuǎn)到個人信息和圖書借還頁面;左側(cè)新書推薦部分動態(tài)顯示新書圖片,方便讀者了解新書信息;右側(cè)上方時快速檢索功能,作為使用頻率較高的模塊放在首頁;右側(cè)下方是圖書館新聞模塊,動態(tài)顯示新聞信息。地圖的功能是將所有主要路徑顯示給用戶,方便用戶進行瀏覽系統(tǒng)的結(jié)構(gòu),提高用戶的操作效率。效果如圖5-2所示。圖5-2 地圖5.1.3圖書

16、檢索圖書檢索頁面分為三部分,分別為普通檢索、分類檢索和按借閱次數(shù)查看。通過導(dǎo)航條的或者左側(cè)的選擇面板切換頁面。其中分類查找和按借閱次數(shù)查看通過AJAX發(fā)送異步請求,動態(tài)的顯示圖書記錄。效果如圖5-3所示。圖5-3 借閱次數(shù)查看頁面在查看排名頁面,系統(tǒng)以列表形式顯示圖書館圖書的歷史借閱次數(shù),同時可以在表格上方的選擇框中選擇需要查閱的圖書種類。5.1.4學(xué)生服務(wù)學(xué)生服務(wù)頁面分為四部分,分別為學(xué)生登錄、學(xué)生留言、個人信息、購書推薦,其中在需要用戶填寫信息時可以加入表單驗證,避免用戶在沒有輸入信息或信息格式不合法時提交請求,減輕服務(wù)器的壓力。以登錄界面為例,其中部分JavaScript代碼如下:$(&

17、quot;*login_form").submit(function()var ok = &&flag.pwd&&flag.checkcode;if(ok)return true;elsealert("請檢查填寫容");return false;);效果如圖5-3所示。讀者在輸入錯誤的驗證碼后登陸失敗,同時系統(tǒng)在輸入?yún)^(qū)域下方顯示錯誤信息。圖5-3 登錄面板5.1.5公告通知公告通知分為4部分,分別為催還通知、預(yù)約通知、學(xué)生推薦、新聞公告。在顯示通知或推薦記錄時使用Struts2標(biāo)簽循環(huán)顯示,可以減少頁面代碼量并且是

18、頁面顯示邏輯更加清晰。以學(xué)生推薦頁面為例,部分Struts2標(biāo)簽代碼如下:<s:iterator value="recommends" var="recommend" status="sta"><tr class="row$sta.count%2+1 "><td>$sta.count </td><td>$stuNum </td><td>$bookName</td><td>$author </td>

19、<td>$press </td><td>$ISBN </td></tr></s:iterator>循環(huán)顯示后的列表如圖5-4所示。圖5-4 循環(huán)顯示列表5.1.6圖書借閱圖書借還分為2部分,分別為職工登錄、借還處理,其中借還處理又可以分為借書、還書、續(xù)借、掛失4部分,為方便管理員工作可以將借還處理的各部分設(shè)計為標(biāo)簽切換的形式,使頁面簡潔明了。其中部分JavaScript代碼如下:$(function()var index=1;$('.work_label,.work_label_selected').cli

20、ck(function()$(this).removeClass('work_label').addClass('work_label_selected').siblings().addClass('work_label');index = $('*work_label_box div').index(this)+1;changePanel(index);););效果如圖5-5所示。管理員在學(xué)號區(qū)域輸入學(xué)生學(xué)號之后,系統(tǒng)發(fā)送異步請求,如果學(xué)號正確則顯示學(xué)生信息和借閱記錄,錯誤則不會顯示。然后管理員在輸入正確的圖書編號后點擊確定,系

21、統(tǒng)生成借書記錄,并提示操作成功。圖5-5 圖書借閱頁面5.1.7數(shù)據(jù)管理數(shù)據(jù)管理分為4部分,分別為員工登錄、圖書管理、學(xué)生管理、信息,其中圖書管理、學(xué)生管理為連個切換面板,方便管理員的操作。5.2 功能實現(xiàn)按照MVC設(shè)計思想,共需要分表現(xiàn)層、控制層、業(yè)務(wù)層、持久層四層進行設(shè)計,在工程的src目錄下對應(yīng)每個層次分別創(chuàng)建對應(yīng)的包。持久層對應(yīng)edu.sxu.library.pojo,業(yè)務(wù)層對應(yīng)edu.sxu.library.dao,控制層對應(yīng)edu.sxu.library.service,表現(xiàn)層對應(yīng)edu.sxu.library.action。以上的對應(yīng)關(guān)系并不是絕對的,根據(jù)業(yè)務(wù)需要和邏輯的復(fù)雜程度

22、,有時一個包可以對應(yīng)多層。另外,根據(jù)Struts2的設(shè)計規(guī)和常用方法,創(chuàng)建erceptor包,用來創(chuàng)建攔截器,防止用戶在未登錄的情況下使用某些功能。同時根據(jù)Hibernate的需求創(chuàng)建edu.sxu.library.mapping包,存放類和數(shù)據(jù)庫表映射文件。此外,對于系統(tǒng)中用到的常量和一些輔助方法,創(chuàng)建edu.sxu.library.util包,存放所用到的工具類。Spring框架和Struts2框架所需的配置文件根據(jù)框架本身的需要直接放在src目錄下,并根據(jù)需要將Struts2的配置文件分為struts.xml,struts-student.xml,s

23、truts-student.xml,struts-data.xml,struts-main.xml,struts-search.xml,struts-manager.xml,struts-notice.xml,其中Struts.xml為Struts框架的總配置文件,它調(diào)用其他幾個配置文件。5.2.1 配置文件總體設(shè)計在struts.xml中加入了所有請求需要的攔截器??紤]到在請求發(fā)出時查詢數(shù)據(jù)需要開啟Hibernate的事務(wù),并在業(yè)務(wù)邏輯結(jié)束后關(guān)閉事務(wù),可以創(chuàng)建共用的攔截器transaction, transaction攔截器用于開啟關(guān)閉事務(wù)。同時在學(xué)生、職工、管理員登錄時都需要用到驗證碼,可

24、以創(chuàng)建checkcode攔截器,用于顯示驗證碼圖片。Struts.xml文件的部分代碼如下:<package name="common" namespace="/" extends="library-default"><action name="checkcode" class="edu.sxu.library.util.StreamAction"><result name="stream" type="stream">

25、<param name="inputName">inputStream</param><param name="contentType">image</param></result></action></package>5.2.2圖書檢索圖書檢索功能中,struts-search.xml負(fù)責(zé)完成處理相應(yīng)的請求,其中負(fù)責(zé)處理請求的部分代碼如下:<action name="*" class="edu.sxu.library.action.s

26、earch.1Action"><result name="NormalSearch">list.jsp</result><result name="LoanNumSuccess">loanNum.jsp</result><result name="ClassifySuccess">classify.jsp</result></action>普通檢索、按照借閱次數(shù)產(chǎn)看和分類檢索分別發(fā)出請求,服務(wù)器根據(jù)配置文件調(diào)用相應(yīng)的edu.sxu.li

27、brary.action.search包下的Action,并且進行具體的功能實現(xiàn)。因為多個功能使用到圖書查詢的方法,可以創(chuàng)建SearchService接口來負(fù)責(zé)完成業(yè)務(wù)邏輯,調(diào)用相應(yīng)的DAO進行數(shù)據(jù)查詢和其他操作。部分代碼如下:public interface SearchService public List<Book> normalSearch(NormalSearch normalSearch,int page,int pageSize);public int normalSearchNum(NormalSearch normalSearch);public List<

28、Book> loanNumSearch(int type, int page, int pageSize);public int getNumByType(int type);public List<Book> classifySearch(int type, int page, int pageSize);在普通檢索中學(xué)生可以根據(jù)多種條件進行檢索,而根據(jù)借閱次數(shù)檢索和和分類檢索只是普通檢索的一種特例。在普通檢索中,為了改善用戶的體驗感受,可以添加AJAX異步顯示相關(guān)信息,提高檢索效率,效果如圖5-6所示。用戶在檢索詞中輸入“生”字時,系統(tǒng)自動按照關(guān)鍵詞進行檢索,并將搜索到的

29、結(jié)果顯示在輸入框下方,為用戶檢索提供參考。圖5-6 普通檢索面板5.2.3學(xué)生服務(wù)學(xué)生服務(wù)功能中,struts-student.xml負(fù)責(zé)完成處理相應(yīng)的請求。根據(jù)需求分析中的要求,學(xué)生未登錄不能查看學(xué)生信息的頁面,可以創(chuàng)建攔截器檢測學(xué)生是否登錄。學(xué)生登錄攔截器類的部分代碼如下:if (session.get("student")= null) / 沒有登錄session.put("notLogin", "hello");return Action.LOGIN; else return invocation.invoke();學(xué)生在使用

30、學(xué)生信息、購書推薦、讀者留言功能時分別發(fā)出請求,服務(wù)器根據(jù)配置文件調(diào)用相應(yīng)的edu.sxu.library.action.student包下的Action,并且進行具體的功能實現(xiàn)。在系統(tǒng)運行結(jié)束后,根據(jù)action返回的結(jié)果提示用戶操作是否成功。以圖書推薦為例,在用戶輸入正確的圖書信息并且在系統(tǒng)驗證沒有被推薦過且圖書館沒有館藏該數(shù)目時,系統(tǒng)提示操作成功,如圖5-7所示。圖5-7 添加圖書成功提示5.2.4公告通知在公告通知功能中,struts-notice.xml負(fù)責(zé)完成相應(yīng)的處理請求。在edu.sxu.library.aciton.notice包下創(chuàng)建RecommendAction,Amer

31、cementAction,AppointmentAction,NewsAciton四個Action類,分別處理學(xué)生推薦、催還通知、預(yù)約通知和新聞公告的請求處理。考慮到業(yè)務(wù)邏輯的復(fù)雜程度較低,可以直接在Action中調(diào)用DAO來完成相應(yīng)的數(shù)據(jù)操作。在Action運行結(jié)束后根據(jù)result跳轉(zhuǎn)到相應(yīng)頁面。以推薦圖書為例,結(jié)果如圖5-8所示。圖5-8 推薦圖書結(jié)果5.2.5 圖書借還圖書借還功能中,struts-manager.xml負(fù)責(zé)完成相應(yīng)的處理請求,在edu.sxu.library.action.manager創(chuàng)建LoginAction,BorrowAction,ReturnAction,R

32、enewAction,ReportLossAction五個Action類,分別處理職工登錄、借書、還書、續(xù)借、掛失的請求處理。針對需求分析中圖書借還面板的動態(tài)顯示學(xué)生信息,即在輸入學(xué)生學(xué)號之后在頁面中顯示學(xué)生的信息和借書記錄,創(chuàng)建MngStuBorrowsAction類處理相應(yīng)請求。以圖書借閱為例,在管理員輸入正確的學(xué)號和圖書編號后系統(tǒng)根據(jù)Action返回的結(jié)果提示用戶,效果如圖所示5-9所示。圖5-9 操作結(jié)果提示5.2.6 信息管理信息管理功能中,struts-data.xml負(fù)責(zé)接受并處理相應(yīng)當(dāng)?shù)恼埱?,在edu.sxu.library.action.data包下創(chuàng)建LoginAction

33、,BookAction,StudentAction,DataAction四個Action類,分別處理管理員登錄、修改圖書信息、修改學(xué)生信息、修改信息的處理請求。以圖書管理為例,效果如圖5-10所示。管理員可以輸入多條查詢關(guān)鍵詞,也可只輸入部分查詢關(guān)鍵詞。在輸入正確的圖書編號之后,系統(tǒng)會發(fā)出異步請求,獲取圖書相關(guān)信息并顯示在頁面中,此時管理員可以進行點擊相應(yīng)圖片進行刪除和更改操作。圖5-10 圖書管理頁面六、集成測試61白盒測試(目錄結(jié)構(gòu)和文件名檢查)項目要求說明名稱Library ManagementJava代碼結(jié)構(gòu)src-edu-sxu-library-action |-dao |-inte

34、rceptor |-mapping |-pojo |-service |-test |-utilaction:主要控制器dao:數(shù)據(jù)持久層,包括實現(xiàn)類和接口類interceptor:攔截器mapping:數(shù)據(jù)庫表影射文件pojo:實體類service:業(yè)務(wù)層代碼,暴多實現(xiàn)類和接口test:測試類util:工具包Web代碼結(jié)構(gòu)WebRoot-css |-img |-js |-main |-search |-student |-notice |-manager |-data |-WEB-INFcss:存放style.css文件js:存放jquery-1.4.3.js文件和其他JavaScript文件main:主頁相關(guān)JSP文件search:圖書檢索相關(guān)JSP文件student:學(xué)生服務(wù)相關(guān)JSP文件notice:公告通知相關(guān)JSP文件manager:圖書借還相關(guān)JSP文件data:數(shù)據(jù)管理相關(guān)JSP文件WEB-INF:默認(rèn)目錄,編譯后的文件和xmlIDE配置Web Context-root:/LibrarySource:src和testJRE:jdk 1.6.0Compiler compliance level:5.0Text file encoding:UTF-86.2 黑盒測試(功

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論