王永建 王海兵 周顯 張?chǎng)巍⒂罎?/p>
摘要:智慧校園中一卡通系統(tǒng)與圖書館系統(tǒng)的有效對(duì)接非常關(guān)鍵,為此進(jìn)行了系統(tǒng)對(duì)接探究。首先設(shè)計(jì)了一卡通系統(tǒng)架構(gòu),描述了各層功能。然后設(shè)計(jì)了系統(tǒng)對(duì)接方案和接口對(duì)接方案。這些設(shè)計(jì)思路在一些實(shí)際項(xiàng)目中已運(yùn)用,效果良好。
關(guān)鍵詞:一卡通;圖書館系統(tǒng);Web服務(wù);XML
中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A DOI:10.3969/j.issn.1003 6970.2016.05.027
本文著錄格式:王永建,王海兵,周
顯,等.智慧校園一卡通與圖書館系統(tǒng)對(duì)接探究[J].軟件,2016,37(5):111-114
0.引言
圖書館作為大學(xué)校園中書籍、文獻(xiàn)、資料保存與管理,信息檢索與傳播,圖書借閱、出版等職能的機(jī)構(gòu),在教學(xué)、科研、文化傳播、校園生活中至關(guān)重要。近些年云計(jì)算、大數(shù)據(jù)、RFID(Radio
Frequency Identification)等信息技術(shù)的發(fā)展,深刻著影響著教育的變革與發(fā)展,也對(duì)大學(xué)圖書館產(chǎn)生著重大影響。
教育部近些年大力推動(dòng)智慧校園規(guī)劃與建設(shè)的創(chuàng)新工作。2015年7月8日,教育部、清華大學(xué)等機(jī)構(gòu)舉行了“2015智慧校園規(guī)劃與建設(shè)暨高校信息化峰會(huì)”。2016年2月2日,教育部印發(fā)了《2016年教育信息化工作要點(diǎn)》的通知。一卡通在智慧校園中應(yīng)用廣泛,與圖書館更是聯(lián)系緊密。不過,現(xiàn)有學(xué)校圖書館系統(tǒng)往往建設(shè)比較早,信息化水平不夠高,或者信息技術(shù)方式單一等,因此圖書館系統(tǒng)與校園一卡通系統(tǒng)的有效對(duì)接、升級(jí)改造十分重要與必要,本文對(duì)此進(jìn)行了探究。
1.總體設(shè)計(jì)
1.1一卡通系統(tǒng)架構(gòu)
本文的智慧校園一卡通系統(tǒng)采用B/S服務(wù)模式,系統(tǒng)架構(gòu)分為四層,從底層往上依次為物理層、數(shù)據(jù)層、中間件層、應(yīng)用層。如圖1所示。
(1)物理層:是整個(gè)一卡通系統(tǒng)運(yùn)行的基礎(chǔ)信息設(shè)施,包括感知層的前端機(jī)具、卡片、傳感器、網(wǎng)絡(luò)設(shè)備、服務(wù)器、磁盤陣列等物理設(shè)備,以及設(shè)備之間互聯(lián)的物理接口。
(2)數(shù)據(jù)層:由一卡通中心數(shù)據(jù)庫與災(zāi)備中心組成,包括數(shù)據(jù)緩沖服務(wù)系統(tǒng)、數(shù)據(jù)調(diào)度系統(tǒng)、服務(wù)組件、技術(shù)組件、安全管理系統(tǒng)等。實(shí)現(xiàn)校園一卡通系統(tǒng)數(shù)據(jù)的采集、處理、存儲(chǔ)、管理與容災(zāi)、備份、檢索等。
(3)中間件層:實(shí)現(xiàn)一卡通中心數(shù)據(jù)庫與應(yīng)用層的隔離,屏蔽用戶直接對(duì)數(shù)據(jù)庫的操作,以保證數(shù)據(jù)的安全。傳統(tǒng)的RMI、CORBA、DCOM等中間件方式已經(jīng)不能適應(yīng)Internet發(fā)展的需要,本文采用Web Service技術(shù)。
(4)應(yīng)用層:是用戶能夠感知、體驗(yàn)到的業(yè)務(wù)系統(tǒng),可概括為核心系統(tǒng)、自助服務(wù)、其它應(yīng)用三類。
1.2開發(fā)環(huán)境
1.2.1J2EE技術(shù)
采用基于Java平臺(tái)的J2EE技術(shù),不僅具備Java2平臺(tái)、標(biāo)準(zhǔn)版(J2SE)的許多特性,并添加了對(duì)EJB組件、Java Servlet、JSP及XML(Extensible MarkupLanguage)技術(shù)的全面支持13]。系統(tǒng)采用輕量級(jí)SSH(Struts Spring Hibernate)開源框架,構(gòu)建于B/S三層應(yīng)用體系結(jié)構(gòu)之上,將復(fù)雜的業(yè)務(wù)邏輯、流程控制邏輯和數(shù)據(jù)存取邏輯在不同的層面上實(shí)現(xiàn)。在應(yīng)用服務(wù)器之上,實(shí)現(xiàn)業(yè)務(wù)邏輯的快速部署和靈活調(diào)整,充分保證數(shù)據(jù)庫系統(tǒng)的安全可靠訪問。
系統(tǒng)要求支持Oracle、DB2、My Sql等主流關(guān)系型數(shù)據(jù)庫,利用XML作為系統(tǒng)接口的數(shù)據(jù)交換標(biāo)準(zhǔn)進(jìn)行信息資源整合;在應(yīng)用支撐平臺(tái)上采用Web Services基于XML的標(biāo)準(zhǔn)化接口定義。
1.2.2基于Java的NIO的Socket網(wǎng)絡(luò)編程技術(shù)
傳統(tǒng)Java的I/O是基于流的方式,因此I/O被認(rèn)為是單個(gè)字節(jié)移動(dòng),采用被稱為Stream的對(duì)象每次移動(dòng)一個(gè)字節(jié)。利用傳統(tǒng)Java的I/O建立的SOCKET服務(wù)器接收客戶端連接,適用于為每一個(gè)連接建立一個(gè)線程,但是如果連接數(shù)據(jù)量巨大時(shí),服務(wù)器的開銷非常巨大。
為解決這個(gè)技術(shù)難點(diǎn),本文采用Java NIO技術(shù),這時(shí)I/O采用面向塊的思想,以塊的方式處理I/O數(shù)據(jù),每一個(gè)操作在一步中生產(chǎn)或者消耗一個(gè)數(shù)據(jù)塊,NIO將最耗時(shí)的I/0操作(填充和提取緩沖區(qū))轉(zhuǎn)移回操作系統(tǒng)實(shí)現(xiàn),因而極大地提高了效率。
2.系統(tǒng)對(duì)接方案
2.1對(duì)接實(shí)現(xiàn)目標(biāo)
校園卡替代圖書證:在圖書館可以使用圖書證的地方都更換為使用校園卡作為有效證件,實(shí)現(xiàn)校園“一卡通行”。
統(tǒng)一收費(fèi)管理:圖書館中用戶所產(chǎn)生的費(fèi)用,都可以從校園卡中扣除,滿足學(xué)校的財(cái)務(wù)管理制度。
圖書信息共享:學(xué)生、教職工等用戶,只需在一卡通系統(tǒng)中提供一次個(gè)人基本信息,其它業(yè)務(wù)系統(tǒng)即能共享用戶信息,用戶就能享有校園里各個(gè)系統(tǒng)的服務(wù)。
2.2對(duì)接改造原則
2.2.1校園卡與圖書證的過渡
暫時(shí)保留圖書證,系統(tǒng)對(duì)接完成后,圖書證將逐步被一卡通校園卡替代,以保證所有的圖書館用戶都可以使用校園卡借書為止。
2.2.2條形碼生成系統(tǒng)改造
圖書館提供所有讀者的條形碼數(shù)據(jù)或條形碼產(chǎn)生規(guī)則,校園卡中寫入條形碼信息。通過安裝一卡通軟件和相應(yīng)的讀卡設(shè)備,實(shí)現(xiàn)在圖書館借還書,通道門禁處可以使用校園卡作為通行證,減少圖書館系統(tǒng)的開發(fā)和改造。
2.2.3借還書業(yè)務(wù)端對(duì)接
保留原激光條碼掃描儀,安裝校園卡讀卡器;安裝掃描助手程序在借還書的客戶端電腦上。掃描助手在圖書借閱端的應(yīng)用模式下(虛線表示新增加功能),條碼掃描儀和掃描助手,兩者功能相同,信息源不同,前者是圖書證,后者是卡。工作模式如圖2所示:
使用方式:在原掃描條碼的界面中,校園卡在讀卡器上刷卡后,即可檢索出個(gè)人的借閱信息,界面彈出個(gè)人信息的小窗口,可加載照片信息。
過渡期間(在兩證并行期間):校園卡若丟失,需掛失校園卡,掛失的校園卡不能在圖書館借書;圖書證若丟失,需掛失圖書證,掛失的圖書證卡不能再借書。
說明:該工作模式下,需要圖書館提供圖書證號(hào)或圖書證號(hào)的生成規(guī)則。
2.2.4收取罰款或繳費(fèi)
讀卡器支持借還書、繳納超期歸還滯納金、繳納物品(如書籍、圖書設(shè)施等)損壞賠償金等。在過渡階段,讀卡器將交費(fèi)記錄先存到圖書館系統(tǒng)中的結(jié)算系統(tǒng),然后將交費(fèi)記錄反饋給校園一卡通結(jié)算系統(tǒng);對(duì)接完成后,讀卡器將交費(fèi)記錄直接反饋給校園一卡通結(jié)算系統(tǒng)。
2.3系統(tǒng)對(duì)接拓?fù)?/p>
一卡通系統(tǒng)與圖書館系統(tǒng)對(duì)接,建議采用數(shù)據(jù)網(wǎng)關(guān)的方式。要求數(shù)據(jù)網(wǎng)關(guān)支持雙網(wǎng)卡,或者通過交換機(jī)同時(shí)與一卡通系統(tǒng)和通圖書館管理系統(tǒng)互聯(lián)。如圖3所示:
(1)數(shù)據(jù)網(wǎng)關(guān)主要實(shí)現(xiàn)圖書館系統(tǒng)與一卡通數(shù)據(jù)中心之間的數(shù)據(jù)交換,保證數(shù)據(jù)同步和身份認(rèn)證,為圖書館系統(tǒng)識(shí)別校園卡提供認(rèn)證依據(jù)。
(2)校園一卡通用戶的信息同步到數(shù)據(jù)網(wǎng)關(guān)中,如新增讀者,掛失、解掛、補(bǔ)卡換卡、注銷、重要字段的修改等信息。
(3)校園卡的身份認(rèn)證提供2種方式:①在線認(rèn)證,一卡通數(shù)據(jù)中心將校園卡的身份信息同步到-數(shù)據(jù)網(wǎng)關(guān)上,讀卡器將讀取的卡片信息在數(shù)據(jù)網(wǎng)關(guān)上進(jìn)行認(rèn)證;②離線認(rèn)證,數(shù)據(jù)網(wǎng)關(guān)將一卡通數(shù)據(jù)中心同步過來的身份信息下發(fā)到借閱點(diǎn)客戶端電腦上或者前端機(jī)具上(如讀卡器、掃描槍),即使網(wǎng)絡(luò)中斷,在短時(shí)間內(nèi)仍能正常使用,網(wǎng)絡(luò)恢復(fù)后自動(dòng)更新數(shù)據(jù)。從安全考慮,建議2種方式混合使用。
本方案在保證數(shù)據(jù)同步的同時(shí),亦能保障在數(shù)據(jù)網(wǎng)關(guān)與一卡通數(shù)據(jù)中心網(wǎng)絡(luò)中斷,或者借閱點(diǎn)與數(shù)據(jù)網(wǎng)關(guān)網(wǎng)絡(luò)中斷時(shí)圖書館業(yè)務(wù)的正常運(yùn)行,提升系統(tǒng)的安全性與可靠性。
3.接口對(duì)接設(shè)計(jì)
3.1接口要求
智慧校園中圖書館系統(tǒng)的接口主要實(shí)現(xiàn)有:收費(fèi)和數(shù)據(jù)交互兩種。收費(fèi)類功能根據(jù)交費(fèi)方式分為批量收費(fèi)、小額脫機(jī)收費(fèi)、聯(lián)機(jī)收費(fèi)和網(wǎng)上收費(fèi)。要實(shí)現(xiàn)一卡通系統(tǒng)與圖書館系統(tǒng)之間的有效對(duì)接,接口應(yīng)采用報(bào)文交換和卡數(shù)據(jù)交互兩種方式相結(jié)合。
(1)報(bào)文交換:實(shí)現(xiàn)智慧校園查詢圖書館系統(tǒng)中的借閱信息、交費(fèi)信息、交費(fèi)結(jié)果,以及兩個(gè)系統(tǒng)之間交換數(shù)據(jù)。
(2)卡數(shù)據(jù)交互方式:圖書館系統(tǒng)通過調(diào)取一卡通中心數(shù)據(jù)庫讀取卡片上數(shù)據(jù)。
3.2接口選擇
3.2.1應(yīng)用層接口
對(duì)于B/S模式的第三方系統(tǒng)接入一卡通系統(tǒng),若采用應(yīng)用層接口互聯(lián),接口的方式可以是.dll和.JavaPackage等形式。
接口程序中將第三方系統(tǒng)智能卡的讀寫、認(rèn)證、消費(fèi)、考勤等具體應(yīng)用進(jìn)行封裝,只需要第三方應(yīng)用系統(tǒng)對(duì)程序進(jìn)行相應(yīng)調(diào)整即可,如圖4(a)所示:
3.2.2中間件層接口
中間件層統(tǒng)一定義所有的接口規(guī)范,制定嚴(yán)格的數(shù)據(jù)數(shù)據(jù)訪問策略,必須通過數(shù)據(jù)訪問層才能訪問數(shù)據(jù)庫。支持異構(gòu)數(shù)據(jù)庫操作系統(tǒng),數(shù)據(jù)訪問層要求標(biāo)準(zhǔn)的接口定義,后臺(tái)數(shù)據(jù)庫操作系統(tǒng)的變化,前臺(tái)的應(yīng)用系統(tǒng)無需變化。
對(duì)于基于Web Service的第三方應(yīng)用系統(tǒng),根據(jù)對(duì)接需要為第三方提供相應(yīng)的Web Service接口,采用XML格式,如圖4(b)所示。
Web Service接口分為調(diào)用方法與調(diào)用實(shí)體實(shí)現(xiàn),在校園一卡通與銀行或者其它支付系統(tǒng)的電子賬戶接口中,建議采用調(diào)用實(shí)體方法,不僅提高安全性,并且方便編程?;赟OAP的Web Services雖然可以解決跨Internet的異構(gòu)訪問問題,但是需要進(jìn)行定制,管理和調(diào)用接口變得比較復(fù)雜。本文采用REST Web Services,既能容易的實(shí)現(xiàn)異構(gòu)系統(tǒng)之間調(diào)用,又能充分利用HTTP協(xié)議。
3.3接口設(shè)計(jì)
3.3.1讀者數(shù)據(jù)同步
(1)新增讀者數(shù)據(jù)同步
校園卡的用戶信息可以做為讀者信息使用,一卡通數(shù)據(jù)中心實(shí)時(shí)或定時(shí)將讀者信息發(fā)送至圖書館系統(tǒng)中。
(2)離校讀者數(shù)據(jù)同步
離校讀者(如畢業(yè)、退學(xué)、肄業(yè)、轉(zhuǎn)學(xué)、開除等)信息,由一卡通數(shù)據(jù)中心實(shí)時(shí)或定時(shí)將讀者信息發(fā)送至圖書館系統(tǒng)中進(jìn)行清除。
3.3.2黑名單同步
掛失的校園卡,或者其它原因列入黑名單的校園卡,由一卡通數(shù)據(jù)中心實(shí)時(shí)或定時(shí)將讀者信息發(fā)送至圖書館系統(tǒng)中,拒絕為黑名單用戶提供借書或者其它服務(wù)。
3.3.3校園身份驗(yàn)證
校園卡在借書時(shí),圖書館系統(tǒng)必須對(duì)校園卡的合法性進(jìn)行認(rèn)證,并支持多種驗(yàn)證方式。(1)圖書館系統(tǒng)驗(yàn)證,黑名單由一卡通數(shù)據(jù)中心同步到圖書館管系統(tǒng)中,在圖書館系統(tǒng)中進(jìn)行認(rèn)證。(2)校園卡中心系統(tǒng)驗(yàn)證,到校園一卡通數(shù)據(jù)中心或者數(shù)據(jù)網(wǎng)關(guān)進(jìn)行在線認(rèn)證。(3)離線狀態(tài)驗(yàn)證,如掛失或者其它原因列入黑名單的校園卡,一旦在POS機(jī)或其它前端機(jī)具上使用,就會(huì)被打上“禁止”標(biāo)識(shí),保證前端機(jī)具在離線狀態(tài)下能夠驗(yàn)證。上述幾種方式可單獨(dú)使用,亦可混合使用。
3.3.4識(shí)別借書證號(hào)
校園卡和條碼卡不一樣,條碼卡上印刷有條形碼,學(xué)生借書時(shí),用掃描槍直接掃描出條碼即可。但校園卡的讀者證號(hào)信息是存儲(chǔ)在校園卡內(nèi)的,建議仍使用讀卡器的方式,但圖書的掃描還需要掃描槍。
3.3.5通道機(jī)對(duì)接身份驗(yàn)證
圖書館門口設(shè)置有通道機(jī),只允許刷卡才能開門。通道機(jī)亦可采用寬松認(rèn)證,沒有借書權(quán)限人也可以通過通道機(jī),根據(jù)圖書館的管理規(guī)定進(jìn)行靈活的權(quán)限控制。可以更換現(xiàn)有通道機(jī)讀卡器實(shí)現(xiàn)與通道系統(tǒng)的對(duì)接。
4.結(jié)束語
智慧校園建設(shè)過程中,一卡通系統(tǒng)與圖書館系統(tǒng)對(duì)接十分重要,本文對(duì)此進(jìn)行了探究,相關(guān)成果在實(shí)際項(xiàng)目中已開始運(yùn)用,效果良好。圖書館系統(tǒng)與一卡通系統(tǒng)對(duì)接涉及的內(nèi)容廣泛,這里僅涵蓋了其中一部分。另外,隨著信息化新技術(shù)的不斷涌現(xiàn),智慧校園將產(chǎn)生新的建設(shè)理念、業(yè)務(wù)應(yīng)用、服務(wù)模式,對(duì)一卡通系統(tǒng)與圖書館系統(tǒng)對(duì)接將提出新的標(biāo)準(zhǔn)與要求,將會(huì)有更多的技術(shù)手段與實(shí)現(xiàn)方案。