陳桂凱 陳攀 吳桐 周正 鄭劍
摘要;由于高校中教師的課表、實(shí)驗(yàn)安排、監(jiān)考等信息往往來源于不同的系統(tǒng),教師迫切希望能有一個(gè)統(tǒng)一的信息查詢和服務(wù)平臺來給教師日常辦公提供幫助,為此設(shè)計(jì)了一款高校教師助手APP系統(tǒng)。利用JSP技術(shù)實(shí)現(xiàn)系統(tǒng)后臺課表、實(shí)驗(yàn)安排及監(jiān)考信息的導(dǎo)入,前臺基于Android平臺進(jìn)行信息查看及提醒設(shè)置,前后臺通過JSON數(shù)據(jù)交互。經(jīng)測試表明該系統(tǒng)可以滿足教師方便、快捷及一站式查詢?nèi)粘P畔⒌男枰?/p>
關(guān)鍵詞:教師助手;Android;JSP;JSON數(shù)據(jù);EXCEL數(shù)據(jù)解析
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2017)07-0100-03
隨著高校的各種信息化系統(tǒng)被實(shí)施(例如教務(wù)系統(tǒng)、實(shí)驗(yàn)預(yù)約系統(tǒng)等等),一方面給教學(xué)帶來了很多便利,但另一方面也導(dǎo)致了一些新的問題。主要有:1)各種教學(xué)信息分散在不同的系統(tǒng)中,缺少一個(gè)統(tǒng)一的信息查詢平臺,給老師的信息查詢帶來不便;2)由于系統(tǒng)設(shè)計(jì)原因,同一類信息一部分在信息系統(tǒng)中,有些還只能是在傳統(tǒng)的Excel表格中。例如由于教務(wù)系統(tǒng)系統(tǒng)設(shè)計(jì)的缺陷,同一門課程同一學(xué)期只能安排一次監(jiān)考,如果有2次及以上的考試,就無法安排全部監(jiān)考信息,導(dǎo)致一部分信息只能以EXCEL表格的形式下發(fā),這樣會給老師帶來教學(xué)上的差錯;3)信息都是只能以網(wǎng)頁的形式訪問,不能滿足日益增長的移動化辦公的需要。因此,開發(fā)一款滿足教師方便、快捷及一站式查詢各類教務(wù)信息的系統(tǒng)是非常必要的。
1系統(tǒng)功能結(jié)構(gòu)的設(shè)計(jì)
系統(tǒng)采用Java技術(shù)開發(fā),系統(tǒng)結(jié)構(gòu)見圖端采用B/S(瀏覽器/服務(wù)器模式)。
1.1服務(wù)端系統(tǒng)功能
如圖1所示服務(wù)端具有如下功能:
1)具有對監(jiān)考信息的插入,解析Excel,和數(shù)據(jù)庫添加信息功能。
2)能夠執(zhí)行將課程表的Excel表解析,從而導(dǎo)入課程信息;
3)使用JSON與手機(jī)端進(jìn)行交互。
1.2手機(jī)端的主要功能介紹
如圖2所示手機(jī)端具有如下功能:
1)提供教師課表的查詢,實(shí)驗(yàn)的安排,還有日常事務(wù)的提醒功能。
2)具有教師監(jiān)考信息的查詢,考試倒計(jì)時(shí),考試提醒功能;
3)對教師個(gè)人信息的設(shè)置,如選擇學(xué)期,綁定電話,設(shè)置性別,昵稱等。
2系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)
2.1前后臺數(shù)據(jù)交互
在后臺的數(shù)據(jù)庫存儲在MySQL數(shù)據(jù)庫中客戶端通過URL請求加載對應(yīng)教師的數(shù)據(jù),在用戶添加新的信息時(shí)也采用URL來提交JSON數(shù)據(jù)到后臺。前后臺約定嵌套的類和List集合以便對于JSON數(shù)據(jù)的封裝和解析在解析JSON數(shù)據(jù)是將各個(gè)類別的數(shù)據(jù)按照類封裝,然后依次裝到List中進(jìn)行嵌套包裝最后通過循環(huán)層層解析數(shù)據(jù)。詳細(xì)流程如圖3所示。
2.2Excel表格數(shù)據(jù)導(dǎo)入
首先要知道Excel表所在的文件夾路徑,通過excel路徑,來解析Excd表中的數(shù)據(jù),使用Workbook對象中的getSheet();方法獲取工作簿對象sheet,使用工作簿中的getRows(),getColumns()分別獲取工作簿的行數(shù)rows和列數(shù)cols,通過循環(huán)結(jié)構(gòu)遍歷整張表,存儲數(shù)據(jù),即完成監(jiān)考信息的導(dǎo)人,具體步驟如圖4所示。
2.3時(shí)間格式解析
在Excel表中每一個(gè)考場的監(jiān)考老師都來自同一個(gè)學(xué)院,在Excel表中會出現(xiàn)重命名的情況,那么可以使用姓名+序號(張三1、張三2)的方式加以區(qū)分并且對應(yīng)了不同的工號。構(gòu)造正則表達(dá)式,將給定的正則表達(dá)式編譯并賦予給Pattern類,編譯給定的正則表達(dá)式并且對輸入的字串以該正則表達(dá)式為模開展匹配,獲取年月日,獲取具體的年月日,轉(zhuǎn)變?yōu)檎麛?shù)數(shù)組,編寫isxq方法對具體時(shí)間做學(xué)年與學(xué)期的判斷,具體步驟如圖5所示。
3系統(tǒng)界面設(shè)計(jì)
首先進(jìn)入軟件導(dǎo)圖界面在界面停留的時(shí)間段判斷用戶是否成功登陸過,如果成功登陸過就跳轉(zhuǎn)到功能主界面數(shù)據(jù),否則跳轉(zhuǎn)到登陸界面,在課表界面,和課程詳情界面,布局如圖6圖7所示按照下拉列表所選的周次加載本地課程和實(shí)驗(yàn)加載數(shù)據(jù);
在考試界面按照考試時(shí)間順序加載考試安排,在考試倒計(jì)時(shí)顯示剩余時(shí)間,在考試詳情界面填入詳情和考試鬧鐘提醒功能。監(jiān)考界面布局如圖所示:
1)監(jiān)考界面整體上是以ListView時(shí)間軸形式展現(xiàn);
2)listview的item里面放了考試的必要信息;
3)item點(diǎn)擊進(jìn)去是考試的詳情界面;
4)詳情界面附加來考試倒計(jì)時(shí)鬧鈴提醒。