張佳亮 普次仁
(西藏大學信息科學技術學院,西藏拉薩 850000)
圖書類的資源是我們在學習和娛樂當中不可或缺的工具,隨著互聯網的蓬勃發展,電子書的普及雖然極大的方便了獲取學習資料的途徑,但是,在實際學習過程中還是以紙質圖書為主。雖然很多大學都有自動化管理的圖書館,但是圖書館的功能業務相對單一,讀者用戶與圖書館管理人員又交流甚少,不能及時地處理用戶的圖書需求。現代大學生所需的知識是海量的,而且大學開設的專業又各種各樣,就拿計算機而言,計算機技術更新迭代的速度特別快,書籍的種類層出不窮,專業課本的價格不菲。而且,隨著優質網生內容的迭代以及產權意識的增強,內容付費逐漸成為主流,這無疑為家庭困難的學生的學習生活設置了障礙。在現實生活中,我們能夠發現,很多同學的圖書用完之后就隨意丟棄或當廢品處理,而學校中有存在很多需要這些圖書的同學,由于年級、專業的不同和社交圈的局限性,使得他們很難從其他擁有這些閑置圖書的同學手中獲取這些圖書資源,限制和制約了圖書交流交換及借閱的范圍和數量[1]。以至于大量圖書失去了其利用價值,造成了資源的極大浪費。基于這一現象,筆者認為,如果大學校園內能夠有一個圖書交換的平臺,將同學手中閑置的圖書收集起來,共享給其他需要的同學去學習使用,不僅可以避免圖書資源的浪費,而且可以減輕同學們的經濟負擔,極大的提高書籍的重復利用率[2]。這也是筆者設計開發西藏大學圖書資源共享系統的重要原因。

圖1 網站功能模塊圖Fig.1 Website function module diagram
系統設計前期,我們在學校進行了小規模的調研和用戶需求分析,通過調研和分析,筆者確定了該系統主要的功能模塊,網站功能如圖1所示。系統角色主要有兩個用戶和管理員。管理員可以進行圖書管理,用戶管理,借閱管理以及圖書種類的管理;用戶只能查詢圖書,借閱圖書以及查看自己的個人信息和自己的借閱圖書信息。
通過對西藏大學圖書館借閱圖書流程的分析,本項目主要涉及用戶、管理員兩個角色的業務邏輯操作,且系統需要保證借還書信息的及時響應,圖書信息以及用戶信息不能出現錯誤。通過筆者對西藏大學圖書館業務的咨詢和了解,最終確定了系統要實現以下幾個功能:(1)讀者可以在平臺上查找圖書;(2)讀者可以在平臺上借閱歸還圖書;(3)讀者可以在平臺上上傳自己的圖書;(4)不同角色實現登錄功能,不同的角色權限不一樣;(5)讀者可以管理自己的信息;(6)管理員可以管理所有的用戶信息,圖書信息;(7)管理員可以管理借閱信息,實現借閱業務。

表1 圖書借閱信息表Tab.1 Book borrowing information table
圖書共享平臺在處理借閱圖書操作的時候,我們是這樣處理的,首先拿到圖書信息,然后判斷圖書的狀態,如果圖書狀態為1說明該書已經被借出不能借閱,否則,如果該書的狀態為0則說明該書沒有被借出,可以借閱。在圖書借閱成功后需要修改圖書的狀態,將未借出修改為已經借出,同理歸還也一樣要修改圖書的借閱狀態,將已經借出修改為未借出。具體代碼如下所示:
if (status1 == 0){//如果圖書的狀態為可以借書
for(String bid :list) {
LendList lendList = new LendList();
lendList.setReaderId(readerCard2.getId());//讀者id
lendList.setBookId(Integer.valueOf(bid));//書的id
lendList.setLendDate(new Date());
lendListService.addLendListSubmit(lendList);
//更變書的狀態
BookInfo info = bookInfoService.queryBookInfoById(Integer.valueOf(bid));
//設置書的狀態
info.setStatus(1);

圖2 借閱管理頁Fig.2 Borrowing management page
bookInfoService.updateBookSubmit(info);
}
}
else {//否則不能進行借閱
return R.fail("不能進行借閱");
}
本系統采用了MySQL數據庫,MySQL數據庫體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點[3],我們選擇MySQL進行存儲數據。系統數據庫一共設計了5張數據庫表,分別是:圖書表、用戶表、管理員表、借閱信息表、圖書類型表。借閱信息數據庫表如表1所示。
前端我們主要采用了網上的開源框架layui。layui是一款采用自身模塊規范編寫的前端UI框架,遵循原生HTML/CSS/JS 的書寫與組織形式,門檻極低,拿來即用。其外在極簡,卻又不失飽滿的內在,體積輕盈,組件豐盈,從核心代碼到API的每一處細節都經過精心雕琢,非常適合界面的快速開發[4]。
我們進入網站,首先進入的是登陸頁面,分為管理員和用戶登錄,二者權限不同。管理員可以管理圖書信息,管理用戶信息,管理借閱信息,發布和刪除公告信息。用戶可以查看圖書信息,添加圖書,借閱圖書,歸還圖書,以及查看公告信息,以下是項目的頁面展示,圖2是項目的借閱管理頁面,可以管理借閱圖書信息。
筆者通過利用spring+springmvc+mybatis+layui框架技術、MySQL數據庫,結合現實需求,設計并實現了“西藏大學圖書資源共享平臺”,系統基本解決了西藏大學學生圖書資源的利用率低,學生無法以相對實惠的方式獲取到自己需要的學習資源的問題,具有較高的實用性。本文簡單地介紹了本系統實現的一些關鍵技術點以及業務邏輯。由于時間倉促,加上自身專業知識水平有限,系統做的尚有一些不足之處。今后,我將圍繞以下幾個方面進行進一步的研究和改善:(1)增加一些防止延期還書或者丟失圖書的措施;(2)使用MD5技術來實現加密登錄,提高網站的安全性;(3)根據用戶的閱讀習慣增加自動推薦圖書的功能;(4)UI和代碼的進一步優化,提高用戶體驗感、代碼的邏輯程度以及操作的流暢度。