郭紹翠,楊 旭,張 琴
隨著手機(jī)功能的日益增多,掌上WebService的應(yīng)用成為一個(gè)熱門(mén)的技術(shù)[1],從電腦上的WebService應(yīng)用到掌上WebService的應(yīng)用使人們可以自己擴(kuò)展自己手機(jī)的功能,方便自己的生活成為可能.我們根據(jù)學(xué)校實(shí)際需要,開(kāi)發(fā)掌上WebSerivce應(yīng)用,具有以下幾個(gè)大功能:掌上投票、掌上論壇、掌上淘書(shū)、掌上訂餐等.數(shù)據(jù)庫(kù):MySQL5.0;操作系統(tǒng):Windows XP或Windows2000;應(yīng)用軟件:裝有JDK1.6或以上版本,Tomcat6.0.下面對(duì)掌上投票系統(tǒng)做簡(jiǎn)單介紹.
用戶(hù)根據(jù)學(xué)號(hào)密碼登陸,客戶(hù)端調(diào)用服務(wù)端方法顯示出個(gè)人信息和其任課教師信息,進(jìn)入投票后調(diào)用服務(wù)端數(shù)據(jù)庫(kù)自動(dòng)生成評(píng)教頁(yè)面.評(píng)教結(jié)束后將數(shù)據(jù)傳給服務(wù)端.里面主要提供的功能有查看未投票的學(xué)生、查看評(píng)教成績(jī)、清除評(píng)教成績(jī)、添加教師信息、修改教師信息、刪除教師信息、添加學(xué)生信息和刪除學(xué)生信息.系統(tǒng)流程如圖1所示,項(xiàng)目服務(wù)器端模塊、客戶(hù)端模塊詳見(jiàn)下面表格1至表格4.服務(wù)系統(tǒng)模塊:
圖1 掌上投票功能結(jié)構(gòu)
表1
客戶(hù)端模塊:
表3
表2
表4
系統(tǒng)整體分為三個(gè)數(shù)據(jù)庫(kù):vote、book、bbs;Vote數(shù)據(jù)庫(kù)包含:
student表:存儲(chǔ)學(xué)生基本信息和登陸情況.student表結(jié)構(gòu)如圖2所示.
teacher表:存儲(chǔ)教師的姓名、所教班級(jí)、任課情況.teacher表結(jié)構(gòu)如圖3所示.votecurrent表:存儲(chǔ)投票結(jié)果.表結(jié)構(gòu)如圖4所示.
圖4 votecurrent表結(jié)構(gòu)圖
Web Services Description Language的縮寫(xiě),是一個(gè)用來(lái)描述Web服務(wù)和說(shuō)明如何與Web服務(wù)通信的XML語(yǔ)言.
WSDL文檔以端口集合的形式來(lái)描述Web服務(wù)[2],WSDL服務(wù)描述包含對(duì)一組操作和消息的一個(gè)抽象定義,綁定到這些操作和消息的一個(gè)具體協(xié)議,和這個(gè)綁定的一個(gè)網(wǎng)絡(luò)端點(diǎn)規(guī)范.WSDL文檔被分為兩種類(lèi)型:服務(wù)接口(service interface)和服務(wù)實(shí)現(xiàn)(service implementations).Web service描述語(yǔ)言(WSDL)就是這樣一個(gè)基于XML的語(yǔ)言[3],用于描述Web service及其函數(shù)、參數(shù)和返回值.因?yàn)槭腔赬ML的,所以WSDL既是機(jī)器可閱讀的,又是人可閱讀的,這將是一個(gè)很大的好處.一些最新的開(kāi)發(fā)工具既能根據(jù)你的Web service生成WSDL文檔,又能導(dǎo)入WSDL文檔,生成調(diào)用相應(yīng)Web service的代碼.
1.根據(jù)學(xué)號(hào)查詢(xún)個(gè)人及任課教師詳細(xì)信息功能代碼如下:
//將學(xué)生的學(xué)號(hào)作為參數(shù),查詢(xún)出的結(jié)果放進(jìn)String數(shù)組中返回.
//通過(guò)class列將Teacher表和Student表聯(lián)合起來(lái)按照登陸者的學(xué)號(hào)查詢(xún)教師信息
//顯示教師姓名及所教課程
2.根據(jù)學(xué)號(hào)查詢(xún)個(gè)人及任課教師詳細(xì)信息功能:將學(xué)生的學(xué)號(hào)作為參數(shù),查詢(xún)出的結(jié)果放進(jìn)String數(shù)組中返回.
//通過(guò)class列將Teacher表和Student表聯(lián)合起來(lái)按照登陸者的學(xué)號(hào)查詢(xún)教師信息
3.查詢(xún)未投票的學(xué)生:在投票結(jié)束后要進(jìn)行統(tǒng)計(jì)未投票的學(xué)生,查詢(xún)student表中除了voteCurrent表以外的學(xué)生.
4.按班級(jí)分類(lèi)計(jì)算教師成績(jī):將班級(jí)做為參數(shù)傳入,將teacher表按班級(jí)分組然后計(jì)算平均分返回類(lèi)型為Vector型.
本項(xiàng)目經(jīng)過(guò)了傳值測(cè)試、掌上評(píng)教服務(wù)測(cè)試、短信接收模塊測(cè)試等幾種測(cè)試[4]:
傳值測(cè)試:對(duì)軟件中對(duì)傳值進(jìn)行了大量的測(cè)試,對(duì)中文亂碼問(wèn)題進(jìn)行了解決,保證了在實(shí)際使用中不會(huì)出現(xiàn)亂碼問(wèn)題.掌上評(píng)教服務(wù)測(cè)試:先使用賬號(hào)登陸進(jìn)行測(cè)試,看評(píng)教結(jié)束后是否有異常,插入數(shù)據(jù)是否準(zhǔn)確.檢查QQ在線(xiàn)服務(wù)測(cè)試:通過(guò)在客戶(hù)端輸入QQ號(hào)碼來(lái)檢測(cè)是否在線(xiàn),返回值是否正確.關(guān)于注冊(cè)的測(cè)試:注冊(cè)時(shí)可以使用中文,保證不會(huì)出現(xiàn)亂碼問(wèn)題短信接收模塊測(cè)試:通過(guò)模擬器,模擬兩臺(tái)手機(jī),進(jìn)行發(fā)短信收短信的測(cè)試,看是否能正確收到.
項(xiàng)目運(yùn)行界面如圖5、6所示:
圖6 服務(wù)器界面
圖5 客戶(hù)端界面
本項(xiàng)目經(jīng)過(guò)三年來(lái)的應(yīng)用,減少了大量工作量,基于WebService技術(shù)使得系統(tǒng)與其他教學(xué)系統(tǒng)具有很好的兼容性;核心算法中加入的自動(dòng)優(yōu)化,自動(dòng)學(xué)習(xí)使得算法十分優(yōu)良,能夠客觀公正的反映教學(xué)情況,對(duì)教學(xué)質(zhì)量的提高有很大的幫助作用,是教學(xué)管理的一個(gè)很好的幫助系統(tǒng).但該項(xiàng)目也有部分算法有待優(yōu)化,是下次進(jìn)一步研究的主要方向.
[1]詹建飛.Jave ME核的技術(shù)與最佳實(shí)踐[M].北京:電子工業(yè)出版社,2008.
[2]陳立偉,張克非.精通Java手機(jī)游戲與應(yīng)用程序設(shè)計(jì)[M].北京:中國(guó)青年出版社,2009.
[3]施錚.J2ME無(wú)線(xiàn)移動(dòng)游戲開(kāi)發(fā)[M].北京:中國(guó)人民郵電出版社,2008.
[4](美)H.M.DEITEL,P.J.DEITEL,B.DUWALDT,L.K.TREES.Web服務(wù)實(shí)用技術(shù)教程[M].勵(lì)志,譯.北京:機(jī)械工業(yè)出版社,2004.