潘鵬
本文提出一種新穎的基于微信平臺的中小學生進出校園的信息發布系統。系統基于微信平臺發布信息,使用帶有攝像頭的終端采集學生的信息,然后將信息傳輸到局域網的服務器上,其中包括學生的圖像信息,局域網內服務器端將數據保存到數據庫同時將數據同步更新到英特網的微信服務器上,最后通過微信服務器發布信息。同時幫助學校完成了學生考勤的信息化和自動化,使得學校的考勤變得更高效。通過一些列的測試與實驗,最終證明了本文提出的系統是可行的。
【關鍵詞】計算機軟件 微信 數據庫
隨著移動互聯網的飛速發展,涉及到嵌入式終端、網絡、物聯網的相關技術也如雨后春筍般不斷的涌現,引領著當今人類社會的發展。人們的生活也隨之而發生了翻天覆地的變化。我們所接觸到的事物或多或少的正在或者已經逐步的信息化、自動化。大數據與云計算的推出,更是加快了這一進程。本文設計出一款可以驗證學生個人身份,家長通過微信直接查詢自己孩子刷卡的圖文信息,將刷卡數據有序保存并再次利用的信息發布系統。在對系統的需求做出分析后,本文提出了一套新穎的系統架構,根據數據安全性的要求,學生的刷卡信息和數據保存和管理在局域網內進行,微信發布圖文數據在Internet網上進行。
1 需求分析
本系統主要致力于實時驗證刷卡學生的個人身份,通過微信實時的發布學生的刷卡信息,將數據庫中的刷卡數據及其他相關數據實現可視化。首先要對刷卡學生的身份進行驗證,以確定刷卡者是不是持卡人;然后要將數據保存到局域網內的數據庫,并將數據同步更新到微信服務器;家長通過微信訪問自己孩子的刷卡記錄,通過圖像和文字確認孩子什么時候進入或外出學校,刷卡的是不是自己的孩子;最后為保存在局域網內的數據提供可視化的管理系統。
2 系統總體設計
本系統屬于學校的內部應用,幫組學校建立自動化的考勤系統,為學校和家長提供一種新的交流方式。根據系統的需求,確定整個系統混合使用B/C和C/S架構,使用MySQL數據庫,將整個系統劃分為信息采集模塊、信息接收與解析模塊、信息同步服務、信息通過微信發布服務以及后臺數據管理系統5個模塊。各模塊間的關系如圖2所示,刷卡終端和信息接收解析模塊間使用C/S架構,信息接收解析和微信服務器間使用B/S架構,數據管理系統使用B/S架構。
3 系統各模塊的實現
3.1 數據庫設計
本系統使用關系型數據庫MySQL,前端的信息采集模塊需要將IC卡中的信息讀取并傳輸給局域網服務器端的接收和解析模塊,將數據驗證并保存到數據庫。
3.2 信息采集模塊
要采集的數據包括兩部分,分別為IC卡信息和個人的照片。本系統的采集終端使用STM32單片機作為主體,使用C語言編程。
3.3 刷卡信息的接收與解析模塊
該模塊使用Java Socket與刷卡終端建立TCP通信。該模塊運行在局域網中的PC端,作為服務器使用ServerSocket設置監聽端口和IP地址,然后與客戶端建立通信。由于刷卡終端不是單一的,為了提高效率,減少人員滯留和等待時間,多線程的處理機制是必不可少的。在讀取IO流中的數據時,遇到了IO阻塞問題,通過try…catch語句捕捉超時異常,在catch語句塊中進行數據解析等操作。解析完數據后保存到數據庫,同時調用同步更新服務,將數據發送到微信服務器。
3.4 信息同步服務
本模塊分為兩部分,即客戶端部分和服務器部分,客戶端部分在信息接收和解析模塊中調用,使用HttpClient工具類將文本數據和圖像數據分開封裝進Http中。服務器端使用Servlet技術處理客戶端的請求,將信息解析并保存到微信服務器。同步成功后給客戶端返回“isok”字符串,同步失敗則返回“failed”字符串。
3.5 微信發布信息服務
3.6 數據管理系統
本系統的數據管理系統是針對校內的,用戶主要有兩類,一類是教師,另一類是整個系統的管理員。本系統為這兩類用戶提供數據的CRUD操作。
本模塊使用SSH框架進行整合開發,使用Jsp技術編寫訪問頁面,使用Struts框架控制整個管理系統的請求與響應、業務處理,使用Hibernate作為持久層去訪問數據庫,使用Spring框架進行整個后臺的對象初始化和依賴注入,此外,Spring框架還進行一定的事務管理,包括系統日志和結合quartz技術實現的系統定時任務處理。
4 結論
本文研究了基于微信平臺的中小學生進出校園的信息發布系統,結合實際案例,自主提出一整套方案,并最終完成整個系統。通過測試,系統最終完美運行。
參考文獻
[1]董健編.物聯網與短距離無線通信技術[M].北京:電子工業出版社,2012.
[2]王莉.安博學生考勤管理系統設計與實現[D].大連:大連海事大學,2014
[3]曹超.平安保險內勤辦公區門禁考勤系統設計與實現[D].成都:電子科技大學,2014.
[4]Cay S.Horstmann,Gary Cornell.Java核心技術[M].北京:機械工業出版,2014.
[5]Charlie Hunt,Binu John,Java Performance[C]. Prentice Hall,2011.
[6]John Lewis,Joseph Chase.Java軟件結構與數據結構[M].北京:清華大學出版社,2014.
[7]Kathy Sierra,Bert Bates.Head First Java[C].Paw Prints,2008.
作者單位
武漢理工大學 湖北省武漢市 430070