〔摘 要〕互聯網的普及和信息技術的發展成就了信息時代的數字圖書館,隨著無線互聯網技術的飛速發展,一種嶄新的以手機為終端的圖書館服務模式——移動圖書館悄然興起。本文首先介紹了無線應用協議,在此基礎上,設計并實現了基于WAP的移動圖書館系統。
〔關鍵詞〕移動圖書館;WAP;無線Internet
DOI:10.3969/j.issn.1008-0821.2010.09.023
〔中圖分類號〕G250.71 〔文獻標識碼〕B 〔文章編號〕1008-0821(2010)09-0092-04
Design and Implementation of Mobile Library System Based on WAPMeng Yong
(Library,Nanjing University,Nanjing 210093,China)
〔Abstract〕Popularity of internet and development of information technology result in digital library in the information age.Along with the rapid progress of wireless Internet technology,a fully new kind of digital library services model,whose terminal is mobile library comes into our vision stealthily.This paper based on wireless application protocol,designed and implemented the mobile library system.
〔Keywords〕mobile library;WAP;wireless Internet
隨著互聯網和移動通訊技術的飛速發展,全球信息化時代已經到來,人類的通信方式發生了革命性的變化,網絡和手機成為人們越來越常用的通信工具。根據工業與信息化部于2010年4月26日發布的通信業運行狀況及主要指標完成情況分析報告,截至2010年3月我國的移動電話用戶已經突破7.7億,互聯網用戶達到了1億,本年度前3個月的移動短信業務量已達到2 056億條[1]。通過手機人們不僅可以打電話、收發短信,還可以WAP上網、閱讀新聞、收發EMAIL、游戲娛樂、訂購商品與服務等等。手機短信與WAP上網作為手機的特殊服務功能,以其低廉的資費及便捷性而深受廣大用戶的喜愛。
越來越多的移動增值服務應時而生,并滲透至諸多行業領域中,產生了不少行業應用產品。無線移動通信技術滲透于圖書館領域,一種以手機為終端的數字圖書館的新服務方式——基于手機的“移動圖書館”悄然興起[2]。移動圖書館的到來不僅可以使讀者不受時間、空間限制、隨時隨地地訪問圖書館的電子資源,同時在一定程度上可以提升圖書館的服務質量與服務水平。
1 無線應用協議(WAP)
1.1 WAP的涵義
WAP是Wireless Application Protocol的英文縮寫,中文全稱是“無線應用協議”,它是一種向移動終端提供互聯網內容和先進增值服務的全球統一的開放式協議標準,是簡化了的無線Internet協議[3]。該協議用來標準化無線通信設備,用于Internet訪問,包括收發E-mail、訪問WAP網站等等。
1.2 WAP通信模型
傳統的WWW通信是采用瀏覽器/服務器端(B/S)結構,即用戶通過瀏覽器向Web服務器發出服務請求,Web服務器在接收到請求后進行響應將處理結果返回給瀏覽器。
與傳統的WWW通信模型相比,WAP同樣也是采用了B/S方式,但是兩者的主要區別在于:在瀏覽器和服務器之間,WAP通信模型多了一個WAP網關。WAP的通信模型則由WAP網關、WAP手機、WAP內容服務器這三部分組成,且三者缺一不可。WAP網關在通信過程中起著協議“翻譯”的作用,是無線移動通信網與互聯網之間連接的橋梁,WAP內容服務器上存儲著服務信息,以供手機用戶通過WAP來訪問。WAP通信模型如圖1所示:
圖1 WAP通信模型
從圖1中,我們可以看出,當用戶通過WAP手機輸入要訪問的WAP服務器的URL地址后,信號經過無線通信網絡,以WAP協議方式將請求發送至WAP網關,然后經過WAP網關的“翻譯”,再以HTTP協議方式與WAP服務器之間進行交互,最后WAP網關將返回的內容壓縮處理成BINARY流返回到客戶的WAP手機上。
WAP網關在通信過程中完成HTTP協議向無線Internet傳輸協議(WSP/WTP)的轉換(Protocol Adapters),并對無線Internet內容進行壓縮(WML Encoder)和編譯(WML Script Compiler)。
1.3 無線標記語言WML
1.3.1 無線標記語言WML
WML(Wireless Markup Language)無線標記語言:是WAP論壇制定的一個基于XML的移動通信設備的標記語言[4]。用HTML語言編寫出的網頁內容,可在PC機上用IE或Fire Fox等網頁瀏覽器進行閱讀,而用WML語言編寫出的文件內容,則是專門用在手機等一些無線終端顯示屏上顯示,供人們閱讀;目前新出品的Opera瀏覽器和WAP手機模擬器等瀏覽器支持用戶通過PC機來瀏覽WML文件,極大地方便編程人員調試WML代碼。此外,WML語言也可以像HTML語言一樣向用戶提供人機交互界面,接受用戶輸入的查詢等操作,然后向用戶返回其所想要獲得的信息資源。
1.3.2 WML文件結構
WML的頁面一般稱作為“桌面(DECK)”,它由一組互相鏈接的卡片(CARD)組成。當用戶通過手機的WAP瀏覽器來訪問某一WML頁面的時候,該頁面的所有CARD都會從遠程WAP網站服務器上下載到手機設備里。CARD之間的切換則是由手機里內置的計算機處理,而不需要再次訪問遠程WAP服務器獲取信息了。在一個CARD卡片里可以包含文本、標記、圖像、鏈接、任務(TASK)、輸入控制等等。同時,CARD與CARD之間可以互相鏈接。
WML文件的整個文檔的實體包含在
與
標記之間。期基于WAP的移動圖書館系統的設計與實現2 系統的設計與實現
2.1 系統功能模塊分析
本系統主要完成用戶通過手機訪問移動圖書館WAP網站進行用戶的身份認證,同時可以續借圖書、查詢已借書信息、查詢OPAC館藏信息、查看圖書館新聞公告、發布建議留言等等[5]。具體的用戶服務功能包括:(1)用戶身份認證,(2)圖書館概況介紹,(3)圖書館新聞動態,(4)館藏書目檢索,(5)查詢讀者借閱信息,(6)續借已借圖書,(7)讀者證掛失,(8)建議留言,(9)使用幫助。
系統后臺管理模塊主要完成所有的與系統相關的業務管理,包括系統參數配置、統計查詢、用戶管理、新聞管理、留言管理等功能[6]。
基于以上系統功能分析,系統功能結構圖如圖2所示:
圖2 系統功能結構圖
系統部分核心功能的詳細分析如下:
2.1.1 系統參數配置功能
系統參數配置功能主要是完成將系統基本參數和業務參數能夠在系統啟動時應用到整個系統中;系統管理員可以在后臺管理操作中對部分參數進行修改重新配置。系統要求所有的系統相關參數都存儲在數據庫的參數表中,在WAP服務器系統每次啟動時,自動從數據庫中讀取已經設置好的系統參數信息,同時系統參數也可由其他相關文件調用。
2.1.2 身份認證功能
用戶身份認證功能主要完成對用戶的身份合法性進行判斷,用戶每次登錄時都需要通過API接口到遠程的數字圖書館業務系統上驗證用戶信息的合法性,同時更新本地系統的用戶數據[7]。該功能流程圖如圖3所示。
圖3 身份認證功能流程圖
當用戶輸入“讀者證號”和“登錄密碼”,點擊登錄按鈕,系統將該證件號和密碼傳遞到遠程數字圖書館業務系統上驗證其身份合法性,若該用戶不存在或認證失敗,則返回錯誤信息。
若該用戶存在且密碼正確,則其身份合法,檢查本地數據庫用戶表中是否存在該用戶信息,若存在則更新本地庫中該用戶的相關信息,否則,將該用戶的讀者證號、密碼等信息添加到用戶信息表中,進而,該用戶可成功進入用戶中心。進入用戶中心后,該讀者可以查詢已借圖書信息、續借圖書、查詢OPAC館藏書目、掛失讀者證、留言反饋等。
2.2 系統開發環境
由于系統開發采用了基于MVC模式的Struts框架和JSP技術,所以開發平臺選擇了Eclipse3.2.1和MyEclipse 5.5.1GA作為系統集成開發環境。WAP服務器采用Tomcat 6.0.16版本,JDK版本為JDK6.0U5,數據庫為SQLServer2000SP4版本,WAP采用WAP1.3版本,WAP瀏覽器為Opera 9.5beta,MVC框架采用Struts 1.2,數據庫連接池為Proxool 0.9.0RC3。進行系統開發之前,在服務器端和開發環境主機端都預先安裝相同版本的JAVA運行環境并配置好相應的環境變量,同時所有的開發工具、WAP服務器和數據庫版本都與服務器上配置的版本相同,以確保系統能夠在移植時產生不必要的錯誤。
2.3 系統開發框架設計
在系統開發框架設計上將該系統從邏輯上分為五層,即客戶層、表示層、業務層、數據層和數據訪問層。客戶層一般指系統的界面,實現人機交互,主要負責用戶手機數據錄入和信息顯示。表示層則負責對用戶發送來的URL請求做出響應,而后調用業務層的相關組件,并將處理的結果返回到客戶層。業務層則負責對數據層的操作,實現對數據添加、修改、刪除和查詢等業務邏輯操作。數據層主要負責數據的存儲、組織和管理。數據訪問層則是用于專門與數據庫進行交互,執行數據的添加、刪除、更新、顯示等。
基于上述的Struts開發框架設計,首先將系統分為表示層、業務層和控制層。然后將Proxool數據連接池集成到Struts框架中作為數據連接層,兩者結合起來作為系統的開發框架[8]。圖4為系統開發框架。圖4 系統開發框架圖
具體來說,整個系統開發采用了基于MVC設計模式的Struts框架和Proxool數據庫連接池技術。表示層中控制器的功能由ActionServlet和Action-Mapping來實現,其中ActionServlet用來接受客戶端發來的請求,Action-Mapping則負責將一個請求映射到一個具體的Action。表示層中的視圖由JSP頁面來展現給客戶。表示層中模型則是由Action和Action Form共同來實現,Action對象負責調用業務邏輯模塊的相關接口,并將處理結果返回給相應的視圖組件,Action Form組件負責實現對客戶端表單數據的封裝。業務層包含了由Java Bean實現的業務邏輯類,并提供與Action類之間調用的接口,同時還封裝了與數據庫連接池Proxool之間的交互。
2.4 數據庫設計
通過對系統功能及業務需求的分析,同時考慮到數據庫結構分明、邏輯體系嚴謹,在功能和性能上能夠滿足系統數據處理的要求,總結出的部分核心數據表的設計及功能如下:
(1)用戶信息表:存放讀者的基本信息,包括讀者證號、密碼、身份證號、惟一標識號、注冊時間、用戶狀態等。
(2)留言信息表:存放讀者建議與留言以及管理員的回復信息,包括讀者證號、留言標題、內容、回復內容、發布時間、回復時間等。
(3)新聞信息表:存放圖書館新聞公告信息,包括標題、內容、發布日期、發布者、發布狀態等。
(4)管理員信息表:存放管理員相關信息,包括管理員ID、密碼、權限組ID、狀態。
(5)管理員組信息表:存放管理員分組權限的信息,包括權限組名稱、權限、權限狀態等。
(6)管理員日志表:存放管理員的操作日志,包括操作員名稱、操作類型、操作內容、操作時間和IP地址等,日志信息不允許被刪除。
2.5 系統實現
目前本系統處于試運行狀態,功能都已實現,考慮到篇幅問題,本文僅給出系統部分界面,如圖5所示。
圖5 WAP網站首頁
3 結束語
本文深入研究了基于WAP服務的圖書館移動服務系統,目前已實現了與力博圖書館業務系統集成,并能夠為讀者提供了圖書館手機WAP服務。WAP服務功能主要包括圖書館公告信息、館藏書名查詢、續借圖書、查詢已借書信息、掛失讀者證等,同時還實現了后臺管理維護模塊,用于對數據的及時更新和管理。隨著3G時代的到來,無線移動通信技術的不斷發展,圖書館移動業務也將迎來前所未有的發展,其研究意義非常深遠。
參考文獻
[1]中國工業與信息化部.2010年3月通信業運行狀況及主要指標完成情況[EB/OL].http:∥www.miit.gov.cn/n11293472/n11293832/n11294132/n12858447/13178391.html,2010-03-15.
[2]陳素梅.手機圖書館開辟移動閱讀的新時代[J].圖書館建設,2007,(5):83-86.
[3]錢麗丹,楊凌云.基于WAP的移動電子商務系統的設計與實現[J].商場現代化,2009,(12):141-142.
[4]劉闖.WAP技術研究[J].遼寧工學院學報,2005,(6):372-375.
[5]茆意宏,武立斌,黃水清.圖書館手機服務系統的建設:需求調查與分析——以南京地區圖書館為例[J].圖書館工作與研究,2008,(12):55-58.
[6]茆意宏.基于手機移動通信網絡的圖書館服務研究述評[J].圖書館理論與實踐,2008,(2):22-24.
[7]孫萍.基于WAP的圖書館移動服務系統的構建[J].圖書館理論與實踐,2008,(6):81-82.
[8]Proxool Configuration[EB/OL].http:∥proxool.sourceforge.net/configure.html,2008-03-04.