郭紹翠,楊 旭,張 琴
隨著手機功能的日益增多,掌上WebService的應(yīng)用成為一個熱門的技術(shù)[1],從電腦上的WebService應(yīng)用到掌上WebService的應(yīng)用使人們可以自己擴展自己手機的功能,方便自己的生活成為可能.我們根據(jù)學(xué)校實際需要,開發(fā)掌上WebSerivce應(yīng)用,具有以下幾個大功能:掌上投票、掌上論壇、掌上淘書、掌上訂餐等.數(shù)據(jù)庫:MySQL5.0;操作系統(tǒng):Windows XP或Windows2000;應(yīng)用軟件:裝有JDK1.6或以上版本,Tomcat6.0.下面對掌上投票系統(tǒng)做簡單介紹.
用戶根據(jù)學(xué)號密碼登陸,客戶端調(diào)用服務(wù)端方法顯示出個人信息和其任課教師信息,進入投票后調(diào)用服務(wù)端數(shù)據(jù)庫自動生成評教頁面.評教結(jié)束后將數(shù)據(jù)傳給服務(wù)端.里面主要提供的功能有查看未投票的學(xué)生、查看評教成績、清除評教成績、添加教師信息、修改教師信息、刪除教師信息、添加學(xué)生信息和刪除學(xué)生信息.系統(tǒng)流程如圖1所示,項目服務(wù)器端模塊、客戶端模塊詳見下面表格1至表格4.服務(wù)系統(tǒng)模塊:

圖1 掌上投票功能結(jié)構(gòu)

表1
客戶端模塊:

表3

表2

表4
系統(tǒng)整體分為三個數(shù)據(jù)庫:vote、book、bbs;Vote數(shù)據(jù)庫包含:
student表:存儲學(xué)生基本信息和登陸情況.student表結(jié)構(gòu)如圖2所示.
teacher表:存儲教師的姓名、所教班級、任課情況.teacher表結(jié)構(gòu)如圖3所示.votecurrent表:存儲投票結(jié)果.表結(jié)構(gòu)如圖4所示.

圖4 votecurrent表結(jié)構(gòu)圖
Web Services Description Language的縮寫,是一個用來描述Web服務(wù)和說明如何與Web服務(wù)通信的XML語言.
WSDL文檔以端口集合的形式來描述Web服務(wù)[2],WSDL服務(wù)描述包含對一組操作和消息的一個抽象定義,綁定到這些操作和消息的一個具體協(xié)議,和這個綁定的一個網(wǎng)絡(luò)端點規(guī)范.WSDL文檔被分為兩種類型:服務(wù)接口(service interface)和服務(wù)實現(xiàn)(service implementations).Web service描述語言(WSDL)就是這樣一個基于XML的語言[3],用于描述Web service及其函數(shù)、參數(shù)和返回值.因為是基于XML的,所以WSDL既是機器可閱讀的,又是人可閱讀的,這將是一個很大的好處.一些最新的開發(fā)工具既能根據(jù)你的Web service生成WSDL文檔,又能導(dǎo)入WSDL文檔,生成調(diào)用相應(yīng)Web service的代碼.
1.根據(jù)學(xué)號查詢個人及任課教師詳細信息功能代碼如下:
//將學(xué)生的學(xué)號作為參數(shù),查詢出的結(jié)果放進String數(shù)組中返回.

//通過class列將Teacher表和Student表聯(lián)合起來按照登陸者的學(xué)號查詢教師信息

//顯示教師姓名及所教課程

2.根據(jù)學(xué)號查詢個人及任課教師詳細信息功能:將學(xué)生的學(xué)號作為參數(shù),查詢出的結(jié)果放進String數(shù)組中返回.


//通過class列將Teacher表和Student表聯(lián)合起來按照登陸者的學(xué)號查詢教師信息

3.查詢未投票的學(xué)生:在投票結(jié)束后要進行統(tǒng)計未投票的學(xué)生,查詢student表中除了voteCurrent表以外的學(xué)生.

4.按班級分類計算教師成績:將班級做為參數(shù)傳入,將teacher表按班級分組然后計算平均分返回類型為Vector型.

本項目經(jīng)過了傳值測試、掌上評教服務(wù)測試、短信接收模塊測試等幾種測試[4]:
傳值測試:對軟件中對傳值進行了大量的測試,對中文亂碼問題進行了解決,保證了在實際使用中不會出現(xiàn)亂碼問題.掌上評教服務(wù)測試:先使用賬號登陸進行測試,看評教結(jié)束后是否有異常,插入數(shù)據(jù)是否準確.檢查QQ在線服務(wù)測試:通過在客戶端輸入QQ號碼來檢測是否在線,返回值是否正確.關(guān)于注冊的測試:注冊時可以使用中文,保證不會出現(xiàn)亂碼問題短信接收模塊測試:通過模擬器,模擬兩臺手機,進行發(fā)短信收短信的測試,看是否能正確收到.
項目運行界面如圖5、6所示:

圖6 服務(wù)器界面

圖5 客戶端界面
本項目經(jīng)過三年來的應(yīng)用,減少了大量工作量,基于WebService技術(shù)使得系統(tǒng)與其他教學(xué)系統(tǒng)具有很好的兼容性;核心算法中加入的自動優(yōu)化,自動學(xué)習(xí)使得算法十分優(yōu)良,能夠客觀公正的反映教學(xué)情況,對教學(xué)質(zhì)量的提高有很大的幫助作用,是教學(xué)管理的一個很好的幫助系統(tǒng).但該項目也有部分算法有待優(yōu)化,是下次進一步研究的主要方向.
[1]詹建飛.Jave ME核的技術(shù)與最佳實踐[M].北京:電子工業(yè)出版社,2008.
[2]陳立偉,張克非.精通Java手機游戲與應(yīng)用程序設(shè)計[M].北京:中國青年出版社,2009.
[3]施錚.J2ME無線移動游戲開發(fā)[M].北京:中國人民郵電出版社,2008.
[4](美)H.M.DEITEL,P.J.DEITEL,B.DUWALDT,L.K.TREES.Web服務(wù)實用技術(shù)教程[M].勵志,譯.北京:機械工業(yè)出版社,2004.