韓 梅 (昭通學院 657000)
基于RFID的昭通木刻版畫甲馬管理系統(tǒng)實現(xiàn)分析
韓 梅 (昭通學院 657000)
在美術學中,甲馬是一種瀕臨絕跡的民間木刻版畫藝術。為了避免了昭通甲馬缺乏管理的種種危機,克服了傳統(tǒng)管理中的諸多弊端。本文提出了基于RFID的昭通木刻版畫甲馬管理系統(tǒng)設計方案,這是一個管理非物質文化遺產(chǎn)物件的物品管理系統(tǒng)。本文采用面向對象的方法、Struts2+Spring+Hibernate 輕量級J2EE技術,闡述系統(tǒng)的實現(xiàn)過程。
RFID;物品管理;MVC
昭通甲馬是云南甲馬的一部分,屬于民間版畫作品,他們帶有強烈的原始韻味,是中國美術史中不可缺少的一部分。作為一種特殊的審美形式,它為昭通地方經(jīng)濟水平、民間繪畫雕刻及民族性格習俗發(fā)展、演變等方面的研究,提供了豐富生動的重要材料。
當前,昭通甲馬基本上處于不規(guī)范的紙質檔案管理的傳統(tǒng)模式。昭通甲馬所涉及到的制作者或傳承人、出產(chǎn)地、名稱、尺寸等基本資料缺失很多,對甲馬的整理、研究更是寥寥無幾。對昭通甲馬的現(xiàn)代化管理勢在必行,現(xiàn)代電腦軟件技術的開發(fā)與推廣運用更顯得任重而道遠。
用戶管理模塊是一個信息管理系統(tǒng)的基本模塊,該模塊是一個通用模塊,它實現(xiàn)對一個業(yè)務系統(tǒng)的所有操作對象的權限控制與管理,對于基于RFID的昭通甲馬管理系統(tǒng)來說,用戶管理模塊需要管理系統(tǒng)管理員、業(yè)務管理員和訪客三種用戶的請求,對三種用戶的請求根據(jù)系統(tǒng)管理員的授權識辨相應的權限,從而實現(xiàn)相應的權限分配與系統(tǒng)管理。圖1是系統(tǒng)登錄的流程圖,從一個常見的角度反映了系統(tǒng)用戶管理模塊的重要。
圖1 用戶登錄流程
用戶使用瀏覽器打開系統(tǒng)頁面,然后登錄,用戶把用戶名和密碼輸入之后,系統(tǒng)調用數(shù)據(jù)庫內的相應系統(tǒng)用戶名和密碼作比對,如果比對結果一致,則調用相應的用戶角色權限模塊進行相應的授權,讓擁有相應權限的角色匹配相應的用戶。如果用戶名和密碼驗證不通過,則返回到驗證頁面,參見圖2。
圖2 用戶登錄界面截圖
基于RFID的昭通甲馬管理信息系統(tǒng)采用基于角色的單點登錄系統(tǒng),該權限認證模塊與用戶管理模塊統(tǒng)一協(xié)調工作。流程處理步驟說明如下:
1.用戶點擊瀏覽器,打開窗口,隨后在地址欄中輸入頁面請求地址,提交。
2.瀏覽器解析Http請求,發(fā)送到Web服務器;Web服務器驗證用戶請求,首先判斷是否有登錄的票據(jù)信息。
3.用戶沒有登錄票據(jù)信息,則跳轉到登錄頁面。
4.用戶輸入用戶名和密碼信息。
5.瀏覽器提交登錄表單數(shù)據(jù)給Web服務器。
6.Web服務需要驗證用戶名和密碼是否匹配,發(fā)送api請求給api服務器。
7.api用戶賬戶服務根據(jù)用戶名,讀取存儲在數(shù)據(jù)庫中的用戶資料,判斷密碼是否匹配。
2018年戲曲百戲(昆山)盛典于10月29日拉開帷幕,并一直持續(xù)到12月7日。全國共有120個戲曲劇種、122家單位的155個劇目參演。由福建省文化廳組織選送的梨園戲、莆仙戲、高甲戲、打城戲、竹馬戲5個本土劇種的1部傳統(tǒng)經(jīng)典大戲和6折代表性經(jīng)典折子戲入選此次全國性戲曲展演,分別是福建省梨園戲傳承中心梨園戲《呂蒙正》、莆仙戲劇院莆仙戲《殺狗記·迎春牽狗》、仙游縣鯉聲藝術傳承保護中心莆仙戲《敬德畫像》、廈門市金蓮陞高甲劇團高甲戲《審陳三·探牢》、晉江市高甲柯派表演藝術中心高甲戲《騎驢探親》、泉州打城戲傳承中心打城戲《目連救母·代母繞枷》、漳浦縣竹馬戲(薌劇)傳承保護中心竹馬戲《唐二別妻》。
(1)如果用戶名和密碼不匹配,則提示密碼錯誤等信息,然后該用戶重新填寫登錄資料;
(2)如果驗證通過,則保存用戶票據(jù)信息;
8.接第3步,如果用戶有登錄票據(jù)信息,則跳轉到用戶請求的頁面。
9.驗證用戶對當前要操作的頁面或頁面元素是否有權限操作,首先需要發(fā)起api服務請求,獲取用戶的權限數(shù)據(jù)。
10.api用戶權限服務根據(jù)用戶名,查找該用戶的角色信息,并計算用戶權限列表,封裝為Json數(shù)據(jù)并返回。
11.當用戶有權限操作頁面或頁面元素時,跳轉到頁面,并由頁面Controller提交業(yè)務數(shù)據(jù)處理請求到api服務器;如果用戶沒有權限訪問該頁面或頁面元素時,則顯示“未授權的訪問操作”,跳轉到系統(tǒng)異常處理頁面。
12.api業(yè)務服務處理業(yè)務邏輯,并將結果以Json 數(shù)據(jù)返回。
14.用戶填寫業(yè)務數(shù)據(jù),或者查找業(yè)務數(shù)據(jù)。
15.當填寫或查找完業(yè)務數(shù)據(jù)后,用戶提交表單數(shù)據(jù)。
16.瀏覽器腳本提交get,post等請求給web服務器,由web服務器再次解析請求操作,重復步驟2的后續(xù)流程。
17.當api服務器驗證用戶身份是,沒有可信用戶票據(jù),系統(tǒng)提示“未授權的訪問操作”,跳轉到系統(tǒng)異常處理頁面。
其基本流程參見圖3。
圖3 權限認證模塊流程圖
基于SSO的單點登錄系統(tǒng)實現(xiàn)了讓用戶一次登錄,所有系統(tǒng)模塊都可以進行相應的業(yè)務處理,也實現(xiàn)了相應的權限獲取和功能模塊的調用。
在基于RFID的昭通甲馬管理信息系統(tǒng)中,數(shù)據(jù)處理模塊所需要處理的數(shù)據(jù)有兩個方面,一是通過網(wǎng)絡存取的結構化數(shù)據(jù),另一個是剛讀取的RFID標簽格式數(shù)據(jù),為了使系統(tǒng)可以正常的處理網(wǎng)絡數(shù)據(jù)和RFID標簽數(shù)據(jù),需要把RFID標簽數(shù)據(jù)按相應的格式處理后通過Internet網(wǎng)絡把數(shù)據(jù)存儲到昭通甲馬管理信息系統(tǒng)的Server端,再調用數(shù)據(jù)持久化操作,實現(xiàn)RFID標簽信息的存儲操作。這一過程是針對新添加標簽信息的情況,如果是對甲馬信息進行盤點管理,則系統(tǒng)一方面使用RFID讀寫器讀寫標簽信息,另一方面通過網(wǎng)絡調用數(shù)據(jù)庫中的信息,比對兩個信息的數(shù)量,種類等信息,當兩側的信息一致時,返回結果并顯示到用戶端。如果RFID讀寫器端的數(shù)據(jù)的數(shù)量大于庫存,則提示用戶是否添加新的數(shù)量到庫存,如果是RFID讀寫器端的數(shù)據(jù)信息的數(shù)量小于庫存,則提示用戶是否重新讀取RFID標簽信息,以核對正確的數(shù)量。
Strust2可以為客戶端提供REST、FreeMarker、Velocity以及JSP等多種視圖方式來展現(xiàn)具體的處理結果。Struts2為JSP提供了大量的標簽庫來實現(xiàn)視圖展現(xiàn)與業(yè)務邏輯的分離,在基于RFID的昭通甲馬管理信息系統(tǒng)中,采用Struts2標簽庫和OGNL表達式來描述系統(tǒng)的業(yè)務數(shù)據(jù)給每個具體客戶端。
傳統(tǒng)的瀏覽器端總是要通過GET或POST方法才能實現(xiàn)與服務器的信息交互,基于WEB2.0的瀏覽器客戶端使用基于AJAX技術的異步模式來提升用戶體驗,讓瀏覽器端可以不用提供信息即實現(xiàn)信息的提交。為了在多個系統(tǒng)中格式化數(shù)據(jù),Struts2提供了JSON組件來完成信息的格式化。在本系統(tǒng)中,使用DOJO庫來封閉XMLRequest對象,實現(xiàn)AJAX的信息傳送。通過異步信息傳送,讓瀏覽器端不刷新即可實現(xiàn)信息的傳遞。
圖4 系統(tǒng)首頁界面截圖
圖5 信息統(tǒng)計與展示界面截圖
設計健壯的系統(tǒng),必然要充分考慮用戶管理、系統(tǒng)信息處理、用戶操作等方面都體現(xiàn)用戶需求,通過良好的用戶分析,滿足用戶的行為習慣。為了充分滿足各用戶的行為習慣,需要在系統(tǒng)設計中設計良好的日志記錄模塊,對管理信息系統(tǒng)的各個階段和用戶的行為習慣進行全程記錄,在保證系統(tǒng)正常運行的基礎上,給系統(tǒng)的下一次迭代更新提供依據(jù)。
一個良好的日志記錄模塊可以為后期的用戶行為或者系統(tǒng)完整性功能設計提供不可或缺的系統(tǒng)體驗。對于采用J2EE的昭通甲馬管理系統(tǒng),日志的記錄使用Log4J來完成相應的系統(tǒng)日志實現(xiàn)。
對于昭通甲馬管理系統(tǒng),所面對的數(shù)據(jù)都是少量的非物質文化等標簽信息,所以需要更新的數(shù)據(jù)信息相對較少,不需要大量的數(shù)據(jù)輸入與輸出操作,但由于RFID標簽所采用的信息是EPC,其描述信息具有典型的非結構化特性,故數(shù)據(jù)在寫入數(shù)據(jù)庫服務器之前需要進行格式化的相應設置。系統(tǒng)物品入庫的操作流程參見圖6。
本系統(tǒng)設計與實現(xiàn)都是采用軟件工程的高內聚、低耦合的設計思想,系統(tǒng)采用面向對象的具體設計與實現(xiàn)。系統(tǒng)的設計與實現(xiàn)均采用模塊化,業(yè)務邏輯與功能展現(xiàn)分離,從而實現(xiàn)系統(tǒng)的功能要求。
在進行系統(tǒng)設計與實現(xiàn)的過程中,實現(xiàn)的難點及關鍵技術是數(shù)據(jù)的處理與信息的統(tǒng)計整理,在整個系統(tǒng)中,系統(tǒng)的設計實現(xiàn)需要關注的是EPC業(yè)務系統(tǒng)的實現(xiàn)過程中,多個標簽信息之間的信息碰撞,標簽的唯一性調識別及標簽的標識。另外,對于系統(tǒng)日志的處理,需要采用統(tǒng)計學中的數(shù)據(jù)挖掘算法來對數(shù)據(jù)進行聚類、分類處理,只有較好地處理信息的分類與聚類,才可以更好的提出解決方案。
圖6 物品入庫操作流程
[1]羅時飛著. 敏捷Acegi、CAS:構建安全的Java系統(tǒng)[M].北京:電子工業(yè)出版社,2007.
[2]范明,孟小峰譯. 數(shù)據(jù)挖掘概念與技術[M].北京:機械工業(yè)出版社,2012.