• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Android平臺(tái)的課表查詢軟件設(shè)計(jì)

      2013-11-01 09:25:54
      關(guān)鍵詞:課表教務(wù)服務(wù)器端

      吳 衡

      (天水師范學(xué)院 物理與信息科學(xué)學(xué)院,甘肅 天水 741001)

      大學(xué)生的課程具有課程種類多、教室分布分散、上課時(shí)間和次數(shù)安排靈活、每門課有不同的教室、選修課程多等特點(diǎn),所以記錄這些信息的課表往往密密麻麻。學(xué)生一般會(huì)將課表打印出來,隨身攜帶。紙質(zhì)的課表在使用中容易破損、遺失、難以長期保存,而且很難及時(shí)更新,一旦課程發(fā)生變化,經(jīng)常會(huì)發(fā)生因課表沒有及時(shí)更新導(dǎo)致學(xué)生找錯(cuò)教室、上課延誤等問題。

      本文將教務(wù)管理與智能手機(jī)相結(jié)合,設(shè)計(jì)實(shí)現(xiàn)基于Android(安卓)系統(tǒng)的應(yīng)用軟件——高校課表查詢軟件,很好地解決了查課表難的問題。本軟件設(shè)計(jì)新穎,學(xué)生只需輸入學(xué)號(hào),便可以快速顯示本人的詳細(xì)課表,包括代課教師、授課地點(diǎn)、上課時(shí)間、課程周節(jié)次等。通過筆者所在單位的實(shí)踐,該系統(tǒng)得到了師生的認(rèn)可。

      1 Android系統(tǒng)簡介

      Android是目前最流行的智能手機(jī)平臺(tái)(占據(jù)全球智能手機(jī)操作系統(tǒng)市場的59%的份額,中國市場占有率為76.7%),其最大特點(diǎn)是采用Linux系統(tǒng)做內(nèi)核和應(yīng)用程序使用JAVA語言開發(fā)。

      2 系統(tǒng)的框架設(shè)計(jì)

      整個(gè)系統(tǒng)由服務(wù)器端和客戶端組成,系統(tǒng)流程按照C/S模式構(gòu)架。如圖1所示。

      圖1 教務(wù)數(shù)據(jù)流拓?fù)鋱D

      智能手機(jī)終端通過無線數(shù)據(jù)網(wǎng)絡(luò)將學(xué)生信息發(fā)往Job Schedule Server(任務(wù)調(diào)度服務(wù)器,簡稱JSS),JSS將學(xué)生信息轉(zhuǎn)發(fā)到系統(tǒng)負(fù)載低的Application Server(應(yīng)用服務(wù)器,簡稱APP)。APP SERVER負(fù)責(zé)與學(xué)校的教務(wù)平臺(tái)通信,它將從JSS傳來的請求逐一按以下步驟處理:安全檢查;遠(yuǎn)程SQL查詢教務(wù)平臺(tái);數(shù)據(jù)重新格式化;壓縮封裝;查詢結(jié)果返回,最后課表信息再通過無線數(shù)據(jù)網(wǎng)返回智能手機(jī)終端。接收到信息后,手機(jī)終端按如下步驟逐一進(jìn)行:安全掃描;數(shù)據(jù)解包;數(shù)據(jù)重新格式化;更新手機(jī)界面、呈現(xiàn)學(xué)生課表。

      代碼的編寫使用開源編輯器Eclipse。編譯、運(yùn)行和調(diào)試在Google提供的手機(jī)模擬器上進(jìn)行。

      為了盡可能避免安卓平臺(tái)碎片化的問題,開發(fā)應(yīng)用程序接口選擇Android2.2版本,最大程度地解決程序在不同運(yùn)行安卓版本手機(jī)間的安裝問題。同時(shí),在開發(fā)的過程中采用模擬器和真機(jī)雙測試,從而保證了程序的運(yùn)行效果,加快了開發(fā)進(jìn)度。[1]

      3 系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)

      3.1 客戶端實(shí)現(xiàn)

      安卓手機(jī)客戶端使用JAVA語言編寫、Eclipse編輯,項(xiàng)目結(jié)構(gòu)如圖2所示。

      圖2 教務(wù)項(xiàng)目結(jié)構(gòu)示意圖

      程序運(yùn)行后首先啟動(dòng)歡迎界面。歡迎界面在屏幕上短暫停留幾秒后進(jìn)入學(xué)生信息輸入界面,在該界面輸入學(xué)號(hào),點(diǎn)擊“查課表”按鈕,學(xué)生周課表出現(xiàn),單擊每一節(jié)課,顯示每節(jié)課的詳細(xì)情況。

      3.1.1 歡迎界面的實(shí)現(xiàn)

      歡迎界面的代碼文件是Splash.java,繼承了android的Activity類,它是整個(gè)程序的默認(rèn)入口。歡迎界面在屏幕上停留幾秒后使用Intent方法進(jìn)入信息錄入界面(SNoInput.java)。停留效果由子線程方法實(shí)現(xiàn)。[2]主線程建立歡迎界面后,用戶新建一個(gè)子線程實(shí)例,用子線程實(shí)現(xiàn)規(guī)定時(shí)間的延遲,結(jié)束后告訴主線程進(jìn)行用戶界面(User Interface簡稱:UI)刷新,從而產(chǎn)生了屏幕停留的效果。實(shí)例代碼如圖3所示。

      3.1.2 學(xué)生信息輸入界面

      SNoInput.java實(shí)現(xiàn)學(xué)生輸入學(xué)號(hào)和網(wǎng)絡(luò)獲取詳細(xì)課表兩個(gè)功能,其中網(wǎng)絡(luò)處理部分是整個(gè)程序的核心和難點(diǎn)。數(shù)據(jù)從服務(wù)器端通過網(wǎng)絡(luò)傳入手機(jī)客戶端時(shí)往往會(huì)產(chǎn)生延遲現(xiàn)象,延遲可能在1s以內(nèi),也可能會(huì)達(dá)到4~5秒或者更長。[3]Android程序運(yùn)行后默認(rèn)情況下在一個(gè)線程內(nèi),UI更新、數(shù)據(jù)處理是一步一步進(jìn)行的。如果網(wǎng)絡(luò)延遲很短,點(diǎn)擊查詢后很快會(huì)進(jìn)入課表顯示界面。一般來講,延遲超過3秒,手機(jī)會(huì)產(chǎn)生假死機(jī)現(xiàn)象,就會(huì)嚴(yán)重影響程序的用戶體驗(yàn)。網(wǎng)絡(luò)性能決定延遲的長短,處理延遲的最好方法就是將網(wǎng)絡(luò)處理與主程序線程分開處理,也就是異步任務(wù)機(jī)制,Android提供了工具類android.os.asynctask來實(shí)現(xiàn)該機(jī)制。SNoInput.java使用Asynctask創(chuàng)建異步任務(wù)來解決網(wǎng)絡(luò)延遲問題,代碼如圖4所示。

      3.1.3 課表詳細(xì)顯示界面

      Android標(biāo)準(zhǔn)庫中的GridView類用表格的排列方法顯示數(shù)據(jù)。[4]以節(jié)次——星期關(guān)系按照表格的形式顯示課程名稱,在課表的每個(gè)窗格的onClick事件中觸發(fā)Dialog,顯示詳細(xì)信息,如圖5所示。

      3.2 服務(wù)器端實(shí)現(xiàn)

      App SERVER服務(wù)器端是客戶端和學(xué)校教務(wù)Oracle數(shù)據(jù)庫的紐帶,它首先要考慮數(shù)據(jù)安全和系統(tǒng)負(fù)載。安全方面,底層操作系統(tǒng)選用Linux3.0,代碼使用Shell腳本和PHP語言共同編寫,采用多層次防護(hù)安全策略,這樣可以有效地增加系統(tǒng)安全性;同時(shí)系統(tǒng)對所有的客戶端請求進(jìn)行安全掃描,過濾敏感SQL查詢語句。PHP調(diào)用原生Oracle數(shù)據(jù)庫接口,直接與學(xué)校教務(wù)數(shù)據(jù)庫進(jìn)行通信,SQL查詢課程表的實(shí)例代碼如圖6所示。

      圖3 屏幕延遲代碼及效果圖

      圖4 異步任務(wù)機(jī)制處理代碼及截圖

      圖5 課表顯示代碼與截圖

      圖6 SQL查詢語句的實(shí)現(xiàn)代碼實(shí)例

      在Oracle數(shù)據(jù)庫上的查詢均優(yōu)化為單表查詢,查詢的結(jié)果返回App SERVER服務(wù)器上后進(jìn)行重新封裝的,這樣數(shù)據(jù)處理工作全部轉(zhuǎn)移到App SERVER服務(wù)器上,將數(shù)據(jù)庫的負(fù)載降到了最低。

      4 結(jié)束語

      文中實(shí)現(xiàn)的課表查詢軟件是基于Android平臺(tái)的查詢服務(wù),利用教務(wù)Oracle服務(wù)器數(shù)據(jù)接口,制作APP SERVER服務(wù)器對課表進(jìn)行查詢,客戶端手機(jī)列出詳細(xì)的課表信息,并且在筆者工作單位進(jìn)行了應(yīng)用。通過移動(dòng)通信網(wǎng)絡(luò)與手機(jī)課表應(yīng)用服務(wù)器之間的互聯(lián)通信,提供給學(xué)生各種與課程有關(guān)的信息,方便了師生的生活和學(xué)習(xí)。

      附程序下載地址:http://dep.tsnc.edu.cn/android/tsncjw.php

      [1]沈文瑞,曾連蓀,楊臻.基于Android平臺(tái)的校園導(dǎo)覽軟件設(shè)計(jì)[J].電子設(shè)計(jì)工程,2012,(9):26-28.

      [2]郭宏志.Android應(yīng)用開發(fā)詳解[M].北京:電子工業(yè)出版社,2010.

      [3]佘志龍.Google Android SDK開發(fā)范例大全[M].北京:人民郵電出版社,2010.

      [4]Meier R.Android 2 高級(jí)編程[M].2版.王超,譯.北京:清華大學(xué)出版社,2010.

      猜你喜歡
      課表教務(wù)服務(wù)器端
      學(xué)生出招解決”日課牌“問題
      如果我是校長
      教務(wù)排課對高等院校教學(xué)運(yùn)行的作用分析
      大學(xué)(2021年2期)2021-06-11 01:13:16
      淺析高校教務(wù)管理存在的問題及對策
      傳播力研究(2019年8期)2019-03-20 10:58:14
      運(yùn)用VBA自動(dòng)生成子課程表
      電子測試(2018年21期)2018-11-08 03:09:36
      淺析異步通信層的架構(gòu)在ASP.NET 程序中的應(yīng)用
      成功(2018年10期)2018-03-26 02:56:14
      淺談新形勢下高校教務(wù)管理人員的素質(zhì)與培養(yǎng)
      以培養(yǎng)方案為核心的教務(wù)管理系統(tǒng)開發(fā)的探索與實(shí)踐
      在Windows中安裝OpenVPN
      各地區(qū)學(xué)生課表
      留學(xué)生(2015年6期)2015-07-02 02:36:20
      庄浪县| 内丘县| 临朐县| 太白县| 牟定县| 海林市| 麟游县| 德钦县| 墨脱县| 会东县| 高密市| 龙口市| 江口县| 赤水市| 鄯善县| 布拖县| 新密市| 库伦旗| 盐津县| 蚌埠市| 巴里| 鹤山市| 大方县| 鄂托克前旗| 栖霞市| 蓬莱市| 綦江县| 新竹县| 罗江县| 龙胜| 朝阳市| 天峨县| 梅河口市| 盐城市| 洛宁县| 庐江县| 昭觉县| 新绛县| 商城县| 高州市| 颍上县|