趙培
【摘 要】隨著信息技術的不斷發展,使用計算機對圖書館信息進行管理,已成為圖書管理的必然發展趨勢。論文闡述了一種基于B/S結構的圖書館管理系統的設計與實現過程,通過該系統的應用能夠顯著提高圖書館的工作效率。
【Abstract】With the constant development of information technology, using the computer manage the library information has become the inevitable trend of book management. This paper explores the design and implementation process of library management system based on B/S structure, in order to improve the work efficiency of library significance through the application of this system.
【關鍵詞】B/S ;ASP.NET;圖書館管理系統
【Keywords】B/S; ASP.NET; library management system
【中圖分類號】G250.71 【文獻標志碼】A 【文章編號】1673-1069(2018)01-0191-04
1 引言
圖書館收集的圖書信息量大,日常的圖書借閱操作任務繁重。在全手工操作下,圖書管理工作效率低,容易出錯。隨著電子信息化技術的高速發展,使用計算機對圖書資料進行管理,可以更快捷、更方便地查找所需圖書,節省大量的勞動力,提高工作效率,并且可以更方便地對數據進行修改維護,提高數據的安全性[1]。本文闡述了一種基于B/S結構的圖書館管理系統的設計與實現過程,該系統能夠實現圖書信息管理、讀者信息管理、借閱信息管理、圖書查詢、系統信息管理和公告管理等相關功能,可以有效提高管理人員的工作效率,方便讀者對圖書進行瀏覽和查詢。
2 系統的功能需求
根據圖書館管理的實際需求,本系統需要具有的主要功能包括:
①圖書信息管理模塊:對圖書基本信息的添加、刪除、修改、查詢和導出。
②讀者信息管理模塊:對讀者基本信息的添加、刪除、修改、查詢和導出。
③系統設定模塊(包括圖書類別管理模塊和讀者分類管理模塊):兩者都有添加、刪除、修改、查詢操作。
④借書還書管理模塊:借書、還書及查詢操作。
⑤留言管理模塊:管理員查看留言,讀者添加、修改及刪除留言。
⑥公告管理模塊(包括公告類別管理模塊和公告信息管理模塊):對公告管理的添加、刪除、修改、查詢。
⑦管理員管理模塊:對信息的添加、刪除、修改、查詢等操作。
系統的主要功能流程圖如圖1所示:
3 系統架構與設計
本系統采用B/S開發模式,數據庫服務器使用SQL Server 2005,開發平臺使用Microsoft Visual Studio 2010。
本系統的數據庫主要包括圖書信息表、圖書類型表、讀者信息表、讀者分類表、圖書借還表、留言表、公告信息表、公告類別表、圖書罰款表和管理員表共10個表,各數據表的功能如下:
①圖書信息表(tb_bookinfo):用來記錄所有圖書的詳細信息。
②圖書類型表(tb_booksort):用來記錄所有圖書的類型信息。
③讀者信息表(tb_reader):用來記錄所有讀者的詳細信息。
④讀者分類表(tb_readersort):用來記錄所有讀者的分類信息。
⑤圖書借還表(tb_borrowback):用來記錄圖書借閱和歸還的詳細信息。
⑥留言表(tb_notes):用來存放讀者留言。
⑦圖書罰款表(tb_bookfakuan):用來記錄所有圖書罰款的信息。
⑧管理員表(tb_manager):用來記錄所有管理員的信息。
⑨新聞信息表(tb_news):用來存放新聞的相關信息。
⑩新聞類別表(tb_newssort):用來記錄所有新聞類別信息。
各個數據表的關系如圖2所示:
4 系統實現
系統實現的主要功能包括:
①用戶登錄:該模塊可以讓讀者、系統管理員和分單位管理員使用,不同的人有不同的權限。
②讀者借閱管理:管理員對讀者借書還書時,有單獨的登錄入口,只要輸入正確的讀者學號就會進入借書還書界面。界面會顯示讀者的信息(讀者編號、讀者姓名、讀者類型和可借數量),圖書信息的情況,以及讀者借書的情況。
③圖書管理:圖書管理包含基本信息的管理和圖書類型的管理兩部分。圖書信息管理模塊主要用于查詢、瀏覽圖書的相關信息以及對圖書信息的增加、刪除、修改等操作。管理員可以通過圖書編號、圖書名稱、圖書類型這三者之中的任何一個進行查詢功能(模糊查詢和精確查詢)。圖書分類管理模塊主要用于查詢、瀏覽圖書分類信息以及對圖書分類信息的增加、刪除、修改等操作。
④讀者管理:讀者管理包含基本信息的管理和讀者類型的管理兩部分。讀者信息管理模塊主要用于查詢、瀏覽讀者的相關信息,以及對讀者的增加、修改、刪除等操作。讀者分類管理模塊主要用于查詢、瀏覽讀者分類信息以及對讀者分類信息的增加、刪除、修改等操作。
5 系統類設計
本節將介紹實現修改圖書信息功能的詳細設計。為了實現修改圖書信息的功能,一共設計了四個類,分別是:endprint
ContactDaoImpl:圖書信息數據庫操作類
ContactServiceImpl:圖書信息服務層類
GetAllContactsAction:查找所有圖書信息的Action類
GetAllCategories4UploadAction:查找所有圖書類別的Action類
下面將逐一介紹這幾個類的設計思路,關系,及類中所使用的方法和實現的功能等。
上述幾個類的關系如下圖3所示。
該類主要功能為實現對contact表的數據庫操作,該類中的成員變量JdbcTemplate類為Spring框架為開發人員提供的一個類,是core包的核心類,它對JDBC操作進行了封裝,完成了資源的創建以及釋放工作,從而簡化了開發者的開發難度,減少了開發人員的代碼量。它還可以幫助避免一些常見的錯誤,比如忘記關閉數據庫連接等。JdbcTemplate將完成JDBC核心處理流程,比如SQL語句的創建、執行,而把SQL語句的生成以及查詢結果的提取工作留給應用代碼。它可以完成SQL查詢、更新以及調用存儲過程,可以對ResultSet進行遍歷并加以提取。
jdbcTemplate對象為由spring通過setter和getter方法自動注入,其他方法通過jdbcTemplate對象的query或update方法來實現,query或update方法需要接收一個sql語句字符串,其結果集resultset通過RowMapper來映射給JavaBean的成員變量。
ContactServiceImpl類的類圖如下圖5所示。
ContactServiceImpl類屬于服務層,由Action層調用,它調用ContactDaoImpl類的方法,設計該類主要是為了分層,分層的意義在于增強代碼的可復用性,代碼的擴展性和安全性,也易于代碼的維護。在大型的項目中這些優勢體現的更為突出,一旦業務變更,只需修改少量代碼就可完成并且影響面也比較小。這些優勢在項目的開發后期和版本的升級時會更好地體現出來,本應用的邏輯比較簡單,只是簡單的調用ContactDaoImpl類的方法。
GetAllContactsAction類的類圖如下圖6所示。
該類調用ContactServiceImpl類,實現了查詢所有圖書的功能,將得到的所有圖書放在List中,再將該List放在request中,由頁面顯示,它繼承了ActionSupport類,在Struts 2配置文件中映射為一個以.action結尾的路徑,頁面中可以請求該路徑,服務器將執行其中的execute方法,該方法返回一個字符串,根據字符串的不同進行重定向或請求轉發給頁面或另一個Action。
GetAllCategories4UploadAction類的類圖如下圖7所示。
GetAllCategories4UploadAction類同樣繼承了ActionSup-port類,由頁面請求,實現了查詢所有圖書類別的功能。
本系統的界面如圖8所示:
6 系統測試
軟件測試就是按照測試方案和流程,利用測試工具對產品進行功能和性能測試,甚至根據需要編寫不同的測試工具,設計和維護測試系統,對測試方案可能出現的問題進行分析和評估。執行測試用例后,需要跟蹤故障,以確保開發的產品適合需求。它用來幫助識別開發完成(中間或最終的版本)的計算機軟件(整體或部分)的正確度(correctness)、完全度(completeness)和質量(quality),使用人工或者自動手段來運行或測試某個系統的過程,其目的在于檢驗它是否滿足規定的需求或弄清預期結果與實際結果之間的差別[2]。
為了更加簡單快捷地測試軟件,采用黑盒測試和白盒測試相結合的方案。黑盒測試即在測試的過程中并不關心軟件內部結構和具體實現,它是通過測試來檢測每個功能是否都能正常使用。在測試中,把程序看作一個不能打開的黑盒子,在完全不考慮程序內部結構和內部特性的情況下,在程序接口進行測試,檢查程序功能是否按照需求規格說明書的規定正常使用,程序是否能適當地接收輸入數據而產生正確的輸出信息。黑盒測試著眼于程序外部結構,不考慮內部邏輯結構,主要針對軟件界面和軟件功能進行測試。主要試圖發現下列幾類錯誤:功能不正確或遺漏;界面錯誤;數據庫訪問錯誤;性能錯誤;初始化和終止錯誤等。
白盒測試也稱結構測試,這種方法將測試對象看作一個透明的盒子,測試人員根據程序內部的邏輯結構及有關信息設計測試用例,檢查程序中所有邏輯路徑是否都能按預定的要求正確工作。白盒測試主要用于對程序模塊的測試,包括程序模塊中的所有獨立路徑至少執行一次;在上下邊界及可操作范圍內運行所有循環;對所有邏輯判定的取值(“真”與“假”)都至少測試一次;測試內部數據結構的有效性等。常用的白盒測試方法主要有邏輯覆蓋測試、基本路徑測試、數據流測試和循環測試[3]。
7 結語
本系統滿足了圖書館管理的功能需求,系統界面清晰、操作方便,有效提高了圖書管理的工作效率。系統仍然存在一些不足,今后需對其進行改進和完善,以滿足用戶的更高要求。
【參考文獻】
【1】李昊,楊燕勤.基于B/S結構的高校圖書館管理系統的開發與應用[J].現代情報, 2010,30(1):154-158.
【2】曹亞新,侯勇,王文國.基于.NET的圖書館管理系統的設計與實現[J].科技情報開發與經濟,2006,16(20):35-36.
【3】楊會朋.圖書館管理系統設計[J].電腦知識與技術,2011,07(18):4289-4291.endprint