張佳亮 普次仁
(西藏大學(xué)信息科學(xué)技術(shù)學(xué)院,西藏拉薩 850000)
圖書類的資源是我們在學(xué)習(xí)和娛樂當(dāng)中不可或缺的工具,隨著互聯(lián)網(wǎng)的蓬勃發(fā)展,電子書的普及雖然極大的方便了獲取學(xué)習(xí)資料的途徑,但是,在實際學(xué)習(xí)過程中還是以紙質(zhì)圖書為主。雖然很多大學(xué)都有自動化管理的圖書館,但是圖書館的功能業(yè)務(wù)相對單一,讀者用戶與圖書館管理人員又交流甚少,不能及時地處理用戶的圖書需求?,F(xiàn)代大學(xué)生所需的知識是海量的,而且大學(xué)開設(shè)的專業(yè)又各種各樣,就拿計算機而言,計算機技術(shù)更新迭代的速度特別快,書籍的種類層出不窮,專業(yè)課本的價格不菲。而且,隨著優(yōu)質(zhì)網(wǎng)生內(nèi)容的迭代以及產(chǎn)權(quán)意識的增強,內(nèi)容付費逐漸成為主流,這無疑為家庭困難的學(xué)生的學(xué)習(xí)生活設(shè)置了障礙。在現(xiàn)實生活中,我們能夠發(fā)現(xiàn),很多同學(xué)的圖書用完之后就隨意丟棄或當(dāng)廢品處理,而學(xué)校中有存在很多需要這些圖書的同學(xué),由于年級、專業(yè)的不同和社交圈的局限性,使得他們很難從其他擁有這些閑置圖書的同學(xué)手中獲取這些圖書資源,限制和制約了圖書交流交換及借閱的范圍和數(shù)量[1]。以至于大量圖書失去了其利用價值,造成了資源的極大浪費?;谶@一現(xiàn)象,筆者認為,如果大學(xué)校園內(nèi)能夠有一個圖書交換的平臺,將同學(xué)手中閑置的圖書收集起來,共享給其他需要的同學(xué)去學(xué)習(xí)使用,不僅可以避免圖書資源的浪費,而且可以減輕同學(xué)們的經(jīng)濟負擔(dān),極大的提高書籍的重復(fù)利用率[2]。這也是筆者設(shè)計開發(fā)西藏大學(xué)圖書資源共享系統(tǒng)的重要原因。
圖1 網(wǎng)站功能模塊圖Fig.1 Website function module diagram
系統(tǒng)設(shè)計前期,我們在學(xué)校進行了小規(guī)模的調(diào)研和用戶需求分析,通過調(diào)研和分析,筆者確定了該系統(tǒng)主要的功能模塊,網(wǎng)站功能如圖1所示。系統(tǒng)角色主要有兩個用戶和管理員。管理員可以進行圖書管理,用戶管理,借閱管理以及圖書種類的管理;用戶只能查詢圖書,借閱圖書以及查看自己的個人信息和自己的借閱圖書信息。
通過對西藏大學(xué)圖書館借閱圖書流程的分析,本項目主要涉及用戶、管理員兩個角色的業(yè)務(wù)邏輯操作,且系統(tǒng)需要保證借還書信息的及時響應(yīng),圖書信息以及用戶信息不能出現(xiàn)錯誤。通過筆者對西藏大學(xué)圖書館業(yè)務(wù)的咨詢和了解,最終確定了系統(tǒng)要實現(xiàn)以下幾個功能:(1)讀者可以在平臺上查找圖書;(2)讀者可以在平臺上借閱歸還圖書;(3)讀者可以在平臺上上傳自己的圖書;(4)不同角色實現(xiàn)登錄功能,不同的角色權(quán)限不一樣;(5)讀者可以管理自己的信息;(6)管理員可以管理所有的用戶信息,圖書信息;(7)管理員可以管理借閱信息,實現(xiàn)借閱業(yè)務(wù)。
表1 圖書借閱信息表Tab.1 Book borrowing information table
圖書共享平臺在處理借閱圖書操作的時候,我們是這樣處理的,首先拿到圖書信息,然后判斷圖書的狀態(tài),如果圖書狀態(tài)為1說明該書已經(jīng)被借出不能借閱,否則,如果該書的狀態(tài)為0則說明該書沒有被借出,可以借閱。在圖書借閱成功后需要修改圖書的狀態(tài),將未借出修改為已經(jīng)借出,同理歸還也一樣要修改圖書的借閱狀態(tài),將已經(jīng)借出修改為未借出。具體代碼如下所示:
if (status1 == 0){//如果圖書的狀態(tài)為可以借書
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);
//更變書的狀態(tài)
BookInfo info = bookInfoService.queryBookInfoById(Integer.valueOf(bid));
//設(shè)置書的狀態(tài)
info.setStatus(1);
圖2 借閱管理頁Fig.2 Borrowing management page
bookInfoService.updateBookSubmit(info);
}
}
else {//否則不能進行借閱
return R.fail("不能進行借閱");
}
本系統(tǒng)采用了MySQL數(shù)據(jù)庫,MySQL數(shù)據(jù)庫體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點[3],我們選擇MySQL進行存儲數(shù)據(jù)。系統(tǒng)數(shù)據(jù)庫一共設(shè)計了5張數(shù)據(jù)庫表,分別是:圖書表、用戶表、管理員表、借閱信息表、圖書類型表。借閱信息數(shù)據(jù)庫表如表1所示。
前端我們主要采用了網(wǎng)上的開源框架layui。layui是一款采用自身模塊規(guī)范編寫的前端UI框架,遵循原生HTML/CSS/JS 的書寫與組織形式,門檻極低,拿來即用。其外在極簡,卻又不失飽滿的內(nèi)在,體積輕盈,組件豐盈,從核心代碼到API的每一處細節(jié)都經(jīng)過精心雕琢,非常適合界面的快速開發(fā)[4]。
我們進入網(wǎng)站,首先進入的是登陸頁面,分為管理員和用戶登錄,二者權(quán)限不同。管理員可以管理圖書信息,管理用戶信息,管理借閱信息,發(fā)布和刪除公告信息。用戶可以查看圖書信息,添加圖書,借閱圖書,歸還圖書,以及查看公告信息,以下是項目的頁面展示,圖2是項目的借閱管理頁面,可以管理借閱圖書信息。
筆者通過利用spring+springmvc+mybatis+layui框架技術(shù)、MySQL數(shù)據(jù)庫,結(jié)合現(xiàn)實需求,設(shè)計并實現(xiàn)了“西藏大學(xué)圖書資源共享平臺”,系統(tǒng)基本解決了西藏大學(xué)學(xué)生圖書資源的利用率低,學(xué)生無法以相對實惠的方式獲取到自己需要的學(xué)習(xí)資源的問題,具有較高的實用性。本文簡單地介紹了本系統(tǒng)實現(xiàn)的一些關(guān)鍵技術(shù)點以及業(yè)務(wù)邏輯。由于時間倉促,加上自身專業(yè)知識水平有限,系統(tǒng)做的尚有一些不足之處。今后,我將圍繞以下幾個方面進行進一步的研究和改善:(1)增加一些防止延期還書或者丟失圖書的措施;(2)使用MD5技術(shù)來實現(xiàn)加密登錄,提高網(wǎng)站的安全性;(3)根據(jù)用戶的閱讀習(xí)慣增加自動推薦圖書的功能;(4)UI和代碼的進一步優(yōu)化,提高用戶體驗感、代碼的邏輯程度以及操作的流暢度。