摘 要:目前高校所使用的信息服務(wù)系統(tǒng)基本上都基于Web,采用B/S或C/S架構(gòu)。隨著移動3G技術(shù)的飛速發(fā)展,為使用移動通信設(shè)備訪問數(shù)據(jù)庫提供了可能。本文主要對基于Android的高校學(xué)生信息查詢系統(tǒng)展開設(shè)計。
關(guān)鍵詞:Android;學(xué)生信息查詢系統(tǒng);生命周期;開發(fā)環(huán)境
中圖分類號:TP311.52
1 開發(fā)平臺
Android平臺采用了軟件疊層架構(gòu),主要由Linux內(nèi)核層、中間層、應(yīng)用程序框架、應(yīng)用層組成。五大組件通常由Activity表現(xiàn)界面、Intent和Intent Filters實現(xiàn)切換、Service實現(xiàn)后臺服務(wù)、Broadcastreceiver發(fā)送廣播信息、Conten Provider存儲數(shù)據(jù)五個組件來構(gòu)建。
2 系統(tǒng)的設(shè)計目標(biāo)
利用本人在高校工作中使用學(xué)生信息管理系統(tǒng)發(fā)現(xiàn)的問題,開發(fā)出基于Android系統(tǒng)的手機應(yīng)用軟件,提供便捷的學(xué)生查詢服務(wù)。希望能夠使教師及時了解學(xué)生信息,大幅度提高工作效率,為學(xué)生提供信息的快速查詢,并能結(jié)合當(dāng)時的最新數(shù)據(jù)進行統(tǒng)計。
3 開發(fā)場景
場景是通過使用者與系統(tǒng)之間的交互來表現(xiàn),從用戶的視角上來分析目標(biāo)軟件系統(tǒng)是否能滿足用戶需求。
3.1 教師
(1)信息采集、收集;(2)信息查詢;(3)信息發(fā)布。
3.2 學(xué)生
(1)信息收集(如:教學(xué)計劃、課程安排、教材選擇、教師授課、教室場地、專業(yè)年級信息等);(2)信息查詢(如:學(xué)籍查詢、成績查詢、課表查詢、選修課查詢、網(wǎng)上評教、空閑教師查詢等);(3)信息的發(fā)布(如校園新聞、二手信息、留言發(fā)布、個人心情、個人日志、上傳照片等);(4)信息交流(包括:個人微博、發(fā)表心情、查看照片、與輔導(dǎo)員的信息交流等)。
4 生成用例
生成用例從系統(tǒng)內(nèi)部看,表示的是一系列的指令動作,這些指令動作會產(chǎn)生一系列的執(zhí)行結(jié)果被外部用戶所感知;從外部用戶的視角看,每一次系統(tǒng)與用戶之間的交流都成為一次用例。
4.1 系統(tǒng)參與者用例
本系統(tǒng)有兩類參與者,教師和學(xué)生。
4.2 系統(tǒng)頂層用例
高校學(xué)生信息查詢系統(tǒng)可以有兩種用戶登錄。兩者所能查詢的權(quán)限應(yīng)加以區(qū)別。教師可以通過本系統(tǒng)查看教學(xué)安排、查看教學(xué)評價、成績錄入、信息發(fā)布等。學(xué)生可以通過本系統(tǒng)查詢個人信息,代課教師信息,課表、空閑教室、選修課信息等。
4.3 性能需求
高校學(xué)生查詢系統(tǒng)為移動用戶提供各種信息服務(wù),因此對選擇哪種手機操作系統(tǒng)、通信網(wǎng)絡(luò)、界面和數(shù)據(jù)儲存都有一定的要求:(1)手機操作系統(tǒng):操作系統(tǒng)要有穩(wěn)定的用戶規(guī)模,同時,用戶在任何地方、任何時間都能查詢需要的信息;并且操作簡單,能很快捷地訪問3G網(wǎng)絡(luò),保證系統(tǒng)良好運行。(2)通信網(wǎng)絡(luò):根據(jù)手機操作系統(tǒng)要求,能在公共互聯(lián)網(wǎng)上通信,快速訪問系統(tǒng)服務(wù)器,達到數(shù)據(jù)的傳送和接收。(3)界面需求:界面應(yīng)該設(shè)計友好,結(jié)構(gòu)清晰,操作方便,有良好的用戶體驗。(4)數(shù)據(jù)存儲:系統(tǒng)對所有的數(shù)據(jù)都要進行安全存儲,方便教師、學(xué)生對數(shù)據(jù)的各種輸入和查詢操作。
基于上述的性能需求分析,要設(shè)計出智能化、適合學(xué)生個性的高校學(xué)生查詢系統(tǒng),需明確系統(tǒng)架構(gòu)、系統(tǒng)數(shù)據(jù)庫管理設(shè)計,選擇適合的手機操作系統(tǒng)平臺,提供準確快捷的信息查詢服務(wù)。
5 系統(tǒng)架構(gòu)與技術(shù)選型
本系統(tǒng)Android客戶端應(yīng)用設(shè)計采用了JAVA技術(shù),網(wǎng)絡(luò)通信采用了Apache Http客戶端,中間Web服務(wù)器使用Servlet來響應(yīng)客戶請求,使用JDBC來訪問后臺數(shù)據(jù)庫。本系統(tǒng)提出無線網(wǎng)絡(luò)和移動終端設(shè)備相結(jié)合的高校信息查詢系統(tǒng)方案,實現(xiàn)校園信息相關(guān)的查詢服務(wù)業(yè)務(wù)。通過移動無線技術(shù),教師、學(xué)生都可以利用手機隨時隨地訪問服務(wù)器,方便的查詢所需的信息。客戶端Android智能手機通過信號塔來訪問高校學(xué)生查詢系統(tǒng)的服務(wù)器,當(dāng)用戶需要進行查詢信息時,則訪問信息查詢系統(tǒng)網(wǎng)絡(luò)的后臺數(shù)據(jù)庫。
6 Android的界面實現(xiàn)與數(shù)據(jù)交換
Android主要使用XML文件和使用Java代碼兩種方式來實現(xiàn)用戶的界面。系統(tǒng)的數(shù)據(jù)庫選擇了MySQL數(shù)據(jù)庫存儲,客戶端讀取數(shù)據(jù)都必須訪問服務(wù)器。Android客戶端與服務(wù)器端連接,必須滿足兩個條件。首先必須采用網(wǎng)絡(luò)訪問,其次數(shù)據(jù)庫必須是打開狀態(tài)。否則無法與服務(wù)端進行通信。程序在滿足條件后會自動連接服務(wù)端進行數(shù)據(jù)交換。客戶端向服務(wù)器端發(fā)出請求讀取命令,服務(wù)器端收到指令后會反饋輸出提示信息,客戶端會讀取服務(wù)器端反饋的信息。同理,客戶端向服務(wù)器端發(fā)出寫命令,服務(wù)器端收到指令后會按照要求寫入,并向客戶端發(fā)出寫入成功與否的反饋信息。
6.1 通過URL和HTTP訪問網(wǎng)絡(luò)資源
Android獲取網(wǎng)絡(luò)資源的方式主要有使用Socket、URL和HTTP以及直接使用WebView瀏覽網(wǎng)頁等方式。通過訪問網(wǎng)絡(luò)來獲取后臺的數(shù)據(jù)庫文件,方便對數(shù)據(jù)庫文件進行增加、插入、更新、刪除、查詢等操作。本系統(tǒng)搭建選擇采用HTTP訪問數(shù)據(jù)庫網(wǎng)絡(luò)。HTTP請求主要包括POST和GET兩種方式。通過提交POST請求獲取網(wǎng)絡(luò)的數(shù)據(jù),通過GET方式獲得返回Response信息,從服務(wù)器端獲取請求到的網(wǎng)絡(luò)數(shù)據(jù)。聲明一個BaseURL常量,通過不同方式來獲得Httprequese對象和Httpresponse對象。
6.2 服務(wù)器端數(shù)據(jù)庫連接
由于要進行網(wǎng)絡(luò)數(shù)據(jù)庫的交互,需要架設(shè)Tomcat服務(wù)器并配置Tomcat服務(wù)器,然后將客戶端要訪問的數(shù)據(jù)庫放置在服務(wù)器上。在登錄模塊,主要采用的是JDBC來訪問數(shù)據(jù)源。通過POST請求連接架設(shè)的Tomcat服務(wù)器端獲取請求反饋,然后通過GET連接獲取信息。對返回的響應(yīng)狀態(tài)碼進行判斷,連接成功后調(diào)用EntitiyUtils類的tostring方法獲取響應(yīng)信息。DefaultHtt計算機lient對象執(zhí)行一次GET方式的HTTP請求,并返回HttpRequest請求對象作為服務(wù)器的響應(yīng)。
6.3 系統(tǒng)各個Activity之間的跳轉(zhuǎn)
系統(tǒng)程序中各個Activity之間的跳轉(zhuǎn)是通過Intent來實現(xiàn)的。Intent可以用來啟動和停止活動,以及在應(yīng)用程序內(nèi)的活動之間進行轉(zhuǎn)換。要在應(yīng)用程序中打開一個不同的應(yīng)用程序屏幕,可以調(diào)用startActivity,并傳遞給它一個Intent。Intent可以顯式的指定要打開的類,或者包含一個目標(biāo)應(yīng)當(dāng)執(zhí)行的動作。
7 結(jié)束語
本文分析了Android系統(tǒng)的開發(fā)工具,并對基于Android的高校學(xué)生查詢系統(tǒng)進行了需求分析,開發(fā)場景的設(shè)置。但僅僅實現(xiàn)了部分模塊的模擬功能,并未能真正投入使用。更多的模塊僅僅是有了設(shè)計理念,客戶端與服務(wù)器數(shù)據(jù)庫的鏈接、安全性,代碼的優(yōu)化等具體功能的實現(xiàn)還有待于完善。
參考文獻:
[1]陸鋼,朱培軍,李慧云.智能終端跨平臺應(yīng)用開發(fā)技術(shù)研究[J].電信科學(xué),2012(05):64-67
[2]韓敬海.Android程序設(shè)計[M].北京:電子工業(yè)出版社,2012:112-115
[3]彭瑾玥,蔣東興,張新鈺.基于移動平臺的知識管理系統(tǒng)的設(shè)計與實現(xiàn)[J].武漢大學(xué)學(xué)報(理學(xué)版),2012(S1):57-60
作者簡介:左浩(1981.01-),男,陜西漢中人,講師,碩士,研究方向:計算機技術(shù)與教學(xué)管理;鄭志榮(1978.01-),男,陜西禮泉人,助理實驗師,本科,研究方向:計算機技術(shù)。
作者單位:西安汽車科技職業(yè)學(xué)院,西安 710038