999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于微信的圖書轉借系統的設計與實現
——以浙江工業大學圖書館為例

2019-04-25 06:22:48佘靜濤浙江工業大學圖書館
圖書館理論與實踐 2019年3期
關鍵詞:微信圖書館用戶

佘靜濤(浙江工業大學圖書館)

1 引言

基于微信的圖書轉借服務就是:當一個讀者不想去圖書館還書且另一個讀者剛好想看這本書時,借出方利用轉借功能將圖書信息生成二維碼, 借入方打開微信端掃一掃即可借走此書。[1]通過這種借閱方式,不僅使得讀者大為方便,同時也減輕了圖書館館員的工作壓力,極大地提高了圖書的利用率。

目前,基于微信的圖書轉借系統已經進入實踐領域。2015年,圖創軟件自主研發了國內第一套圖書轉借系統,該系統整合圖書館的業務系統,內嵌圖書館微信公眾號、門戶和App,海南大學、云南大學都是該系統的用戶;[2]2016年5月,“浙江圖書館圖書轉借服務——隨時隨地借書體驗”推出。[3]從圖書轉借系統的研究成果來看,陳靖認為圖書轉借服務這種新型圖書借閱制度的優勢在于:節約讀者的時間、解決讀者的不便、促進讀者之間知識共享、促進傳統圖書館業務優化升級;[4]李保紅對圖書館轉借系統產生的背景、如何應用以及所產生的功能效益進行了描述;[1]豆洪青等認為轉借服務是傳統圖書館借閱服務線上線下融合的體現。[5]但是針對微信公眾平臺的圖書轉借系統設計與實現的相關研究幾乎沒有。

2 基于微信的圖書轉借系統的設計

本研究以浙江工業大學圖書館為實踐對象,利用其現有的圖書信息管理系統,充分考慮讀者對圖書轉借服務的需求,設計基于微信的圖書轉借系統。

2.1 系統功能模塊

浙江工業大學圖書館基于微信的圖書轉借系統經過前期大量的調研與準備工作,實現的主要功能模塊如下。① 系統登錄及驗證模塊。驗證讀者身份,該模塊用以確保讀者賬號的合法性。② 讀者借閱信息模塊。讀者可以在微信客戶端上通過點擊菜單或者輸入關鍵字,獲取自己的圖書借閱信息,并通過鏈接直接跳轉到圖書的發布轉借和轉借他人的頁面,也可以使用瀏覽器登錄圖書轉借系統進行相關操作。③ 已發布的圖書轉借信息查看模塊。讀者可以查看其他讀者已發布的圖書轉借信息,可以使用題名和責任者作為檢索詞對已發布的圖書進行檢索,同時支持語音錄入檢索詞。④ 圖書轉借信息發布模塊。讀者可以將自己借閱的圖書信息進行發布,發布時需要提供電話、QQ號或者微信號以便其他讀者聯系。⑤ 圖書轉借二維碼生成模塊。圖書借出人在面對面轉借時,將自己的賬號、圖書的館藏號等信息生成二維碼供借入人掃碼。⑥ 微信掃二維碼借書模塊。圖書借入人在當面轉借時,使用微信掃碼功能識別二維碼并借入圖書,轉借結果語音提示。⑦ 圖書借閱規則模塊。保證圖書轉借系統的借閱規則與圖書館借閱規章制度一致,保障圖書使用的公平性。

2.2 系統設計思路

微信公眾平臺提供了強大的消息API接口和微信JS-SDK網頁開發工具包。使用消息API接口,開發者可以通過微信公眾平臺獲取微信客戶端發送的文字、圖片、音頻和視頻消息,根據不同消息的響應函數將處理過的數據反饋給微信客戶端。使用 JS-SDK網頁開發工具包,開發者可借助微信高效地使用拍照、選圖、語音、位置等手機系統的能力,同時可以直接使用微信分享、掃一掃、卡券、支付等功能為用戶提供更優質的網頁體驗。[6]浙江工業大學圖書館基于微信的圖書轉借系統不僅需要使用微信客戶端發送、接收消息,而且需要使用微信的錄音、語音識別、掃一掃等諸多功能。因此,本研究確立了利用微信公眾平臺的消息API和JS-SDK網頁開發工具包實現圖書轉借系統的技術路線。

經過分析圖書轉借系統的功能需求以及確定了系統的技術路線后,本文制定了系統的架構(見圖1),明確了系統的設計思路。

圖1 圖書轉借系統架構

圖書轉借系統部署在微信服務平臺服務器上,通過微信服務器和圖書館信息管理系統進行通信,系統不僅能實現對微信公眾平臺消息API接口和JS-SDK網頁開發工具包的調用,同時也可實現對圖書館信息管理系統接口的調用。

系統采用MVC三層架構,即模型(Model)、視圖(View)、控制器(Controller)。核心部分的設計思路如下。

(1)系統調用微信公眾平臺的JS-SDK網頁開發工具包和百度的智能語音合成、人臉識別接口,實現系統的圖書轉借掃碼、語音檢索、語音提示和用戶綁定等功能。調用Google Zxing 2.0開源類庫,[7]實現圖書轉借二維碼的生成功能。

(2)系統需要調用的圖書館信息管理系統相關接口主要有三個。① 讀者借閱信息接口。通過該接口,開發者可以獲取讀者借閱圖書的信息,包括書的題名、ISBN號、出版社、館藏號、借閱時間、應歸還時間等。② 讀者信息接口。通過該接口,開發者可以獲取讀者信息,包括讀者的學工號、聯系方式、姓名、照片等。③ 圖書轉借服務接口。通過該接口,開發者提供對應參數實現圖書的轉借服務。接口需要判斷圖書能否被轉借,保證圖書轉借系統的借閱規則與圖書館借閱規則一致,并返回出錯信息。

(3)圖書轉借系統需要與圖書館信息管理系統數據保持同步,同步的數據包括讀者信息和圖書的借閱信息。其中,讀者信息用以保證圖書借出人和借入人的賬號合法權限,借閱信息用以保證已發布的圖書轉借信息的時效性。

(4)圖書轉借系統需要將圖書館賬號與微信公眾號的OpenID(每個用戶對每個公眾號有一個唯一的OpenID)關聯起來,并將關聯信息存入數據庫,以避免在使用圖書轉借系統時反復輸入圖書館賬號。

(5)讀者使用微信客戶端與系統交互,系統首先調用微信公眾平臺的接收消息接口接收讀者消息,消息中包含了讀者的OpenID和關鍵詞等信息,然后系統根據關鍵詞調用響應函數,由響應函數處理讀者的請求,最后系統調用微信公眾平臺的發送消息接口,將處理好的數據返回給讀者。

(6)讀者可以使用微信瀏覽器或者普通瀏覽器登陸圖書轉借系統,系統根據瀏覽器自帶的User Agent字符串,判斷讀者使用的瀏覽器類型。如果是微信瀏覽器,系統會自動使用微信網頁授權[8]的方式判斷用戶身份后登錄系統;如果是普通瀏覽器,則需要讀者輸入賬號和密碼登錄系統。與微信瀏覽器相比,普通瀏覽器無法調用手機系統的大部分能力。

(7)系統將圖書的信息、當前借閱人的信息以及提供轉借服務的程序地址等信息置于二維碼中,借入人可以通過使用微信掃一掃功能實現轉借。

(8)為保障圖書使用的公平性,系統數據庫保存讀者的轉借(借出)記錄,保證一年之內同一讀者對同一圖書的轉借(借出)次數不超過2次。

3 基于微信的圖書轉借系統的實現

浙江工業大學圖書館圖書轉借系統在充分考慮了服務器操作系統兼容性問題的基礎上,利用微信公眾平臺的消息API接口、JS-SDK網頁開發工具包和Google Zxing 2.0開源類庫,調用百度的智能語音合成、人臉識別等接口,使用Java編程語言和Hibernate數據庫框架開發圖書轉借系統,系統的數據庫采用MySQL關系型數據庫,Web頁面使用HTML5和AJAX技術。

3.1 系統實現

根據系統功能需求和系統設計思路,系統的數據模型由JSP文件實現,主要負責讀寫數據庫,為系統提供數據源。系統的視圖使用HTML5及jQuery技術實現,主要負責數據的呈現以及與用戶的交互。控制器由一個采用AJAX技術的JS文件實現,主要負責系統的邏輯處理。系統的工作流程如圖2所示。

圖2 圖書轉借系統工作流程圖

用戶將圖書館賬號與微信公眾號的OpenID綁定后,可以使用微信瀏覽器或者普通瀏覽器登錄圖書轉借系統。系統支持用戶綁定、發布圖書轉借信息、查看讀者借閱信息、查找已發布的圖書、將圖書轉借他人以及使用微信掃碼借書等。其中,用戶綁定、生成圖書轉借二維碼和微信掃碼借書功能是系統實現的重點和難點。

(1)用戶綁定功能。為了確保轉借圖書由本人操作,用戶綁定的時候不僅需要驗證用戶圖書館賬戶的合法性,同時需要對用戶進行人臉識別,因此在綁定的過程中引入了百度的人臉識別技術,具體的實現過程如下。① 系統的數據庫中建立一個圖書館賬號與微信公眾號OpenID的映射表“binduser”以保存微信公眾號綁定用戶的信息(見表1)。② 編寫實現用戶綁定的數據模型userBind.jsp,程序的流程見圖3。③編寫用戶綁定信息的同步程序,同步程序是一個在系統啟動時就執行的多線程程序,每隔2小時執行一次,負責將用戶綁定映射表信息與圖書館信息管理系統中的用戶信息進行同步。

表1 用戶綁定映射表“binduser”

圖3 綁定程序流程圖

(2)生成圖書轉借二維碼。系統調用Google Zxing 2.0開源類庫實現生成圖書轉借二維碼的功能,實現的核心代碼如下。

/*“encode”函數生成帶Logo和書名的圖書轉借二維碼,參數“text”包括轉借服務程序地址、借出人的信息和圖書的信息,“logopath”是Logo圖片的地址,“title”是圖書的題名,“width”和“height”是生成二維碼圖片的寬和高,“response”是個數據流對象,負責在瀏覽器上顯示二維碼*/

public static boolean encode (String text,String logopath,String title,int width,int height,HttpServletResponse response) {

try{…

BufferedImage image=new BufferedImage (width, height,BufferedImage.TYPE_INT_RGB);

Hashtable hints=new Hashtable();//用于配置矩陣參數

hints.put(EncodeHintType.CHARACTER_SET,"utf-8");//設置二維碼內容所使用編碼

hints.put(EncodeHintType.ERROR_CORRECTION,ErrorCorrectionLevel.M);//設置二維碼容錯級別

BitMatrix bitMatrix=new MultiFormatWriter().encode (text,BarcodeFormat.QR_CODE,width,height,hints);//生成二維碼矩陣

image=toBufferedImage(bitMatrix); //?toBuffered-Image函數利用矩陣數據創建圖片Graphics2Dgs=image.createGraphics() ;

Imageimg=ImageIO.read(newFile(logpath)) ;

gs.drawImage(img,78,78,40,40,null);//將 logo 圖片繪制在二維碼圖片中

Colorco=newColor(195,195,195) ;

Fontfo=newFont("宋體 ",Font.PLAIN,12) ;

gs.setColor(co) ;

gs.setFont(fo) ;

if(getStringLenth (title) >=9) {

gs.drawString(title.substring(0,putStringLenth(8,title))+"...",38.0F,177.0F);}//將圖書題名繪制在二維碼中

else{gs.drawString(title,38+((12-getStringLenth(title)) /2*10) ,177.0F) ;}

gs.dispose() ;

img.flush() ;

ImageIO.write(image,"png",response.getOutputStream());returntrue;//將圖片數據寫入到數據輸出流對象}catch (Exceptione) {…}}

(3)微信掃碼借書。① 系統的數據庫中建立一個記錄讀者圖書轉借記錄的表“exchangebooklog”,通過該表實現一年之內同一讀者對同一圖書的轉借(借出)次數不能超過2次的圖書轉借規則,避免圖書轉借過程中產生的糾紛,表結構見表2。② 系統通過調用微信公眾平臺的JS-SDK網頁開發工具包使用微信掃一掃的功能,該功能使系統能夠獲取圖書轉借二維碼中包含的轉借服務程序地址、借出人的信息和圖書的信息并直接跳轉到該地址。③ 轉借服務程序利用微信網頁授權機制獲取掃碼人的OpenID,根據OpenID在用戶綁定映射表中得到掃碼人圖書館賬號信息。利用二維碼中包含的信息,調用圖書館信息管理系統的轉借服務接口,完成圖書轉借服務。完成圖書轉借服務后系統需要更新數據庫中已發布圖書的相關信息。④ 編寫已發布的圖書轉借信息的同步程序,同步程序是一個在系統啟動時就執行的多線程程序,程序每隔2小時執行一次,負責將已經通過其他途徑歸還的圖書信息從圖書轉借系統數據庫中刪除,以保證發布的圖書轉借信息的時效性。

表2 讀者圖書轉借記錄表“exchangebooklog”

3.2 系統測試

經過檢測,圖書轉借系統的運行結果符合浙江工業大學圖書館規章制度中有關圖書借閱的相關規定,具體的測試結果見表3。

表3 圖書轉借系統測試結果

本文介紹了浙江工業大學圖書館圖書轉借系統,旨在利用移動通信的便利性為讀者提供一種新的借閱服務模式,同時也希望與其他高校圖書館分享圖書轉借系統的設計與實現方法,讓更多高校圖書館利用微信公眾平臺,搭建自己的圖書轉借系統。

猜你喜歡
微信圖書館用戶
圖書館
小太陽畫報(2018年1期)2018-05-14 17:19:25
微信
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
飛躍圖書館
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
微信
微信
微信
圖書館里的是是非非
主站蜘蛛池模板: 国产高潮视频在线观看| 国产亚洲精品97在线观看| 热99re99首页精品亚洲五月天| 香蕉视频在线精品| 欧美成人午夜在线全部免费| 亚洲香蕉久久| 3p叠罗汉国产精品久久| 真实国产乱子伦高清| 中文字幕伦视频| 久久精品视频亚洲| 亚洲一级毛片免费观看| 国产极品美女在线播放| 试看120秒男女啪啪免费| 2021亚洲精品不卡a| 久久国产乱子| 99久久精品久久久久久婷婷| 国产免费久久精品44| 日韩精品专区免费无码aⅴ | 女人18一级毛片免费观看 | 激情网址在线观看| 亚洲欧洲日产无码AV| 国产精品久久久久久久久久98| 国产经典在线观看一区| 人妻21p大胆| 亚洲中文字幕无码爆乳| 成人福利在线视频免费观看| 青青国产视频| 久久国产成人精品国产成人亚洲 | 亚洲AⅤ综合在线欧美一区| 99久久精品国产综合婷婷| 亚洲精品色AV无码看| 国产丝袜91| 日本a∨在线观看| 国产在线观看成人91| 五月天在线网站| 国产亚洲视频在线观看| 成人日韩视频| 丁香亚洲综合五月天婷婷| A级全黄试看30分钟小视频| 久久婷婷六月| 亚洲视频欧美不卡| 四虎在线观看视频高清无码| 久久这里只有精品23| 2021国产在线视频| 超碰91免费人妻| 国产幂在线无码精品| 久久久久国色AV免费观看性色| 午夜精品久久久久久久99热下载| 91网红精品在线观看| 高清乱码精品福利在线视频| 色婷婷亚洲综合五月| 国产激情无码一区二区免费| 亚洲天堂啪啪| 99在线免费播放| 日韩色图在线观看| 亚洲第一在线播放| 国产福利一区二区在线观看| 福利片91| 久久a级片| 国产综合在线观看视频| 97影院午夜在线观看视频| 久久久四虎成人永久免费网站| 在线观看网站国产| 中文字幕不卡免费高清视频| 国产欧美在线观看一区| 成年人免费国产视频| 日本a∨在线观看| 国产黑人在线| 国内精自视频品线一二区| 青青热久免费精品视频6| 色婷婷狠狠干| 99热这里只有免费国产精品| 热久久国产| 好紧太爽了视频免费无码| 欧美日一级片| 中文字幕啪啪| 久久精品欧美一区二区| 亚洲第一区在线| 日本精品αv中文字幕| 色综合天天综合中文网| 久久精品无码国产一区二区三区| 中文字幕无码电影|