freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于bs架構的圖書館管理系統(tǒng)論(編輯修改稿)

2025-06-12 20:20 本頁面
 

【文章內容簡介】 書籍歸還的時候則會結算超期時間,并將對應記錄刪除。 reader 表,該表有 readname、 cardid、 maxborrownum、 couldborrownum、 psd和 overtime六個元組,分別存放讀者 用戶名 、借書卡號、最大可借閱書籍量、當前可借閱書籍量、借書卡密碼和當前超期時間。 這張表用于存放讀者賬戶的信息,基本所有的模塊都會對這張表進行操作。 tuijian 表,該表只有 bookname、 writor 和 num 三個元組,分別存放推薦書籍的書名、作者和推薦數(shù)量 。這張表的作用就是統(tǒng)計推薦的書籍,只有推薦模塊會對這張表產生影響。 在系統(tǒng)結構方面,由于有三種權限類型,所以決定采用三種身份不同登錄入口的方法,登錄后三個身份就各自進入不同的部分,除非退回主頁重新登錄,不然無法進入別的身份能夠進入的頁面,各個身份只是共享數(shù)據(jù)庫,其他部分則沒有交集。 本 數(shù)據(jù)庫 的 設計 圖如下: 南京大學金陵學院 畢業(yè)論文 (設計 ) 界面設計 系統(tǒng)界面設計方面,首頁是整個系統(tǒng)的入口,由于決 定使用三種身份不同登錄入口的設計,所以首頁和身份權限有關的部分設計如下: 如果是游客,則只能使用第一排所有功能和圖書檢索功能,而要有更多的功能,則需要從第二排的對應入口登錄。 登錄只需要賬戶和密碼, 同時登陸頁面應該盡可能的簡單明了, 所以登錄界面 里有作用圖 412 數(shù)據(jù)庫結構 圖 圖 413 首頁截圖 南京大學金陵學院 畢業(yè)論文 (設計 ) 的 只有 2 個用于輸入數(shù)據(jù)的文本框和 必備的重置確定按鈕。讀者登錄界面和管理員登錄界面除了標題和背景色稍有區(qū)別以外,其他地方完全一樣,區(qū)別只在于與之相關的 servlet 中的處理過程,管理員登錄界面如下: 無論是讀者還是管理員,登錄成功后進入的都是對應的個人資料管理頁面,該頁面用于修改個人密碼,同時也可以利用界面上的超鏈接進入對應身份的其他功能頁面,讀者與管理員的頁面不同之處就在于讀者多了修改 用戶名 的文本框以及由于擁有權限不同而不同的超鏈接。管理員個人資料管理界面如下: 圖書的借閱 、 歸還 、 超期記錄清除必須經過管理員, 圖書續(xù)借、預借、推薦則可以通過讀者完成。這幾個功能的頁面區(qū)別不大, 區(qū)別在 于 圖書推薦需要輸入書名和作者名, 圖書借閱需要輸入對應的讀者號, 圖書歸還、續(xù)借和預借只要輸入書號,超期記錄清除只要輸入讀者號以及不同身份權限導致的超鏈接不同, 其他界面方面沒有什么區(qū)別。 這里選擇圖書借閱和圖書續(xù)借兩個頁面作為例子, 圖書借閱頁面如下: 圖 416 圖書借閱頁面截圖 圖 415 管理員個人資料管理頁面截圖 圖 414 登陸界面截圖 南京大學金陵學院 畢業(yè)論文 (設計 ) 圖書續(xù)借頁面如下: 管理員的最關鍵的權限就在于可以添加和刪除讀者賬戶,由于具有兩種功能,所以在讀者賬戶管理頁面使用一個下拉菜單讓管理員選擇操作 類型。讀者賬戶管理頁面如下: 詳細設計 經過了需求分析和概要設計,在這一部分里,在程序方面需要就各個模塊的實現(xiàn)細節(jié)、算法進行描述,在數(shù)據(jù)庫方面, 概要設計里面的數(shù)據(jù)庫設計應該重點在描述數(shù)據(jù)關系上,詳細設計則要描述為什么要使用這種類型存儲數(shù)據(jù) 。 本文在這一部分將主要利用文字敘述配合流程圖和關鍵代碼將各個模塊的功能一一描述。 在數(shù)據(jù)庫方面,一共有以下這幾個數(shù)據(jù):書名、圖書號、賬戶、 借書卡號、 密碼、 用戶名 、 作者、最大可借閱書目、當前可借閱數(shù)目、預 借人卡號、借閱標記、預借標記、續(xù)借標記、預借時間、借閱時間、應該歸還時間、歸還時間、超期時間。由于圖書號和借書卡號不能排除以 0 開頭的情況且不可能出現(xiàn)小數(shù)點,所以不能使用整型或者浮點型進行存放,所以將這兩項在 MySQL 里使用 char 型進行存放,雖然看上去是數(shù)字,實際上是一個個字符串。各個標記同樣也使用長度為 1 個字符的 char 型進行存放。由于是為中小型圖書館設計的圖書館管理系統(tǒng),一般數(shù)據(jù)量不會很多,所以除了標記只使用一個字符長度進行存放外,其他為了保證空間足夠 存放數(shù)據(jù) , 都分配了較大的空間。 而涉及到時間的數(shù)據(jù),由 于 Java 中返回當前時間的方法是以返回一個 long 類型的數(shù)據(jù),數(shù)據(jù)內容是從方法執(zhí)行時間到過去一個固定的時間點的毫秒數(shù),所以在 MySQL 中使用 bigint 類型存放各類時間數(shù)據(jù)。 圖 418 讀者賬戶管理頁面截圖 圖 417 圖書續(xù)借頁面截圖 南京大學金陵學院 畢業(yè)論文 (設計 ) 在程序方面, 所有的模塊都要使用的方法是參數(shù)的獲取和數(shù)據(jù)庫的查詢或改寫, 參數(shù)的獲取使用 2 種方法, 方法獲取文本框中的參數(shù) , 方法獲取下拉菜單里的參數(shù)。所有的網頁表單使用 post 方法將數(shù)據(jù)傳給對應的 servlet。與數(shù)據(jù)庫的連接使用 JDBC 作為驅動,對 數(shù)據(jù)庫里數(shù)據(jù)的查詢和修改則使用 PreparedStatement 對象里的 executeQuery 方法和 executeUpdate 方法。 各個模塊具體流程和關鍵代碼如下: 登錄模塊: 從表單獲取賬戶和密碼 的輸入 后連接數(shù)據(jù)庫,查詢是否有對應的數(shù)據(jù),沒有則跳轉到登錄錯誤頁面 并且不產生輸出 ,正確則根據(jù)選擇的登錄入口進入對應的個人資料修改頁面。 如果成功登錄,則創(chuàng)建一個 session 作為輸出 用于存放登錄的用戶的信息, 流程圖如下 : 個人管理模塊: 本模塊的輸入是從表 單獲取的舊密碼、兩遍新密碼和從 session 獲得的當前登錄用戶用戶名。 如果輸入的 2 遍新密碼不同則會進入修改資料錯誤頁面 且不產生任何輸出 。 2 遍新密碼一致后獲取 session 里存放的當前登錄的管理員用戶的賬戶名或者讀者用戶的借書卡編號,然后訪問數(shù)據(jù)庫, 查詢是否有用戶名符合從 session 中獲取的登錄名以及密碼符合輸入的舊密碼的賬戶。如果有則 根據(jù)表單上的數(shù)據(jù)對 數(shù)據(jù)庫中 符合賬戶名或借書卡圖 421 登錄算法流程圖 南京大學金陵學院 畢業(yè)論文 (設計 ) 編號的賬戶信息進行修改 作為輸出 。 修改后依然在個人資料修改頁面。如果沒用則跳轉到個人資料修改錯誤頁面 且不產生任何輸出 。 兩種個人管理模 塊的的區(qū)別僅在于借書卡管理模塊可以修改 用戶名 ,借書卡管理模塊中如果不輸入新 用戶名 則 用戶名 不做改動。 所以流程圖和關鍵代碼只列出管理員的個人管理模塊。流程圖如下: 圖書查詢模塊: 本模塊的輸入是 從表單獲取 的 圖書查詢條件和用于查詢的書名 /作者名后,連接數(shù)據(jù)庫,與 book 表中數(shù)據(jù)進行比對,將符合條件的圖書書名、書號、作 者 ,是否已被借閱的信息通過 servlet 里的 ()方法以網頁形式 進行 輸出。該模塊流程圖如下: 圖 422 個人資料修 改算法流程圖 南京大學金陵學院 畢業(yè)論文 (設計 ) 賬號添加 刪除模塊: 本模塊的輸入是 從表單獲取操作類型和操作對應的借書卡號,如果是添加則看借書卡號是否已存在,卡號存在就不能添加,如果是刪除則看該借書卡有沒有借書記錄和超期記錄,存在記錄就不能刪除,不符合要求則跳轉到賬號管理錯誤頁面 并且不產生任何輸出 ,符合要求則進行對應處理, 輸出是對數(shù)據(jù)庫的修改, 然后依然返回賬號添加刪除頁面。該模塊流程圖如下: 圖 423 圖書查詢算法流程圖 南京大學金陵學院 畢業(yè)論文 (設計 ) 借閱模塊: 本模塊的輸入是 從表單獲取 的 需要借閱的圖書的書號和借閱 該書的讀書卡號 ,之 后訪問數(shù)據(jù)庫。先查詢該書是否處于被借狀態(tài)(可能是借書時書號輸入錯誤或還書時書號輸入錯誤造成)以及該借書卡是否還有可借數(shù)額、超期記錄或是當前借閱的圖書處于超期階段。 然后再 查詢該書是否還在預訂期以及預訂人是否就是借書人。 不符合條件則跳轉到圖書借閱錯誤頁面 并且不產生任何輸出 。 一切條件符合后對 book,borrowbook, reader 三張表進行相對應的修改 作為輸出 ,然后返回圖書借閱頁面。 該模塊流程圖 如下: 圖 424 賬戶增刪算法流程圖 南京大學金陵學院 畢業(yè)論文 (設計 ) 續(xù)借模塊: 本模塊的輸出是 從表 單獲取需要續(xù)借的圖書號 以及 從 session獲取當前登錄用戶借書卡號 , 之后 查詢數(shù)據(jù)庫,看是否有符合該書號且是當前登錄借書卡借閱的未超期且未被續(xù)借過的借閱圖書 。如果沒有符合要求的圖書則跳轉到續(xù)借錯誤頁面且不產生任何輸出。如果有則對 borrowbook表進行修改 以作為輸出 ,將應該還書時間延后至續(xù)期時間的一個月以后 ,然后返回圖書續(xù)借頁面。 該模塊程序流程圖如下: 圖 425 圖書借閱算法流程圖 南京大學金陵學院 畢業(yè)論文 (設計 ) 預借模塊: 本模塊的輸入是 從表單獲取 的 想要預訂的圖書號 ,之 后連接數(shù)據(jù)庫,在borrowbook表 中查詢是否有和圖書號相同的圖書。有的話則在 book表中查詢該書是否已經被預借。不符合條件則會 跳轉到預借錯誤頁面 且不產生任何輸出 ,符合條件則進行 對 數(shù)據(jù)庫 進行 修改 作為輸出 ,然后返回圖書預借頁面。該模塊流程圖如下: 圖 426 圖書續(xù)借算法流程圖 南京大學金陵學院 畢業(yè)論文 (設計 ) 還書模塊: 本模塊的輸入是 從表單獲取 的要還的 圖書 的書 號 ,之后連接數(shù)據(jù)庫 先在borrowbook表里查詢是否存在這本書。不存在則跳轉到還書錯誤頁面 且不產生任何輸出 ,如果存在 則對數(shù)據(jù)庫進行修改作為輸出,修改過程如下:先 查詢該本書是否已經超期,超 期則將超過的時間累加到借閱該書的讀書卡信息上 ,將該借書卡可借閱數(shù)目 +1,并刪除 borrowbook表中條目。 然后查詢 book表看該書是否被預借,如果被預借則在把該書的借閱符號改成未借閱的同時將預借時間設為當前時間,如未預借則 預借時間依然為 0。 數(shù)據(jù)庫修改完成后依然返回還書頁面。該模塊流程圖如下: 圖 427 圖書預借算法流程圖 南京大學金陵學院 畢業(yè)論文 (設計 ) 超期記錄清除模塊: 本模塊是的輸入是 從表單獲取 的需要清除超期記錄的借書卡號 , 之后連接數(shù)據(jù)庫, 查詢 reader表中是否有對應的超期賬戶。如果沒有則跳轉到超期記 錄清除錯誤頁面 且不產生任何輸出 ,如果有,則將對應賬戶的超期記錄置 0作為本模塊輸出 ,然后返回超期記錄清除頁面。該模塊流程圖如下: 圖 428 圖書歸還算法流程圖 南京大學金陵學院 畢業(yè)論文 (設計 ) 推薦模塊: 本模塊的輸入是 從表單獲取 的推薦的書名和作者 , 之后連接數(shù)據(jù)庫, 查詢tuijian表中數(shù)據(jù),如果有相同數(shù)據(jù),則在該條目下推薦數(shù)目上 +1作為輸出 ,如果沒有則插入新數(shù)據(jù) 作為輸出 ,然后返回圖書推薦頁面。該模塊流程圖如下: 圖 4210 圖書推薦算法流程圖 圖 429 超期記錄清除算法流程圖 南京大學金陵學院 畢業(yè)論文 (設計 ) 第五 章 系 統(tǒng) 測 試 一切設計都 完成后,系統(tǒng)就算是編寫完成了,但是仍然有重要的一步就是系統(tǒng)測試。它的任務是盡可能地檢查出程序里的錯誤,提高軟件系統(tǒng)的可靠性 ,測試各個功能是否符合了用戶功能和性能的要求。 本文這一部分將采用一系列測試用例來對系統(tǒng)的各個模塊進行測試,
點擊復制文檔內容
試題試卷相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1