田林琳+洪偉
摘要:該文主要介紹了在教學工作量管理系統(tǒng)的設(shè)計實現(xiàn)過程中,如何使用Web Service技術(shù)實現(xiàn)移動平臺和Windows平臺的系統(tǒng)整合。教學工作量系統(tǒng)的實現(xiàn)使得教師在手機端隨時隨地查看錄入教學工作量,手機端的業(yè)務(wù)數(shù)據(jù)反饋到Windows平臺的教學工作量管理系統(tǒng)中,方便教務(wù)處和分院領(lǐng)導進行工作量的維護和統(tǒng)計工作。該文首先分析了學校教師工作量管理的背景和意義,然后介紹了Web Service技術(shù)實現(xiàn)移動平臺和Windows平臺的系統(tǒng)整合的方法。該系統(tǒng)涉及Android 程序開發(fā)技術(shù)、WebService訪問技術(shù)。通過測試,系統(tǒng)在Android4.0及以上版本的移動終端平臺下運行穩(wěn)定,達到了預(yù)期的設(shè)計目標,有一定的實用價值。
關(guān)鍵詞:Web Service;Android; SQL Server 2008;系統(tǒng)集成
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2015)26-0128-02
1 引言
對于移動終端設(shè)備飛速發(fā)展的今天,很多傳統(tǒng)WEB上的應(yīng)用出現(xiàn)在手機終端。Windows平臺的軟件的部分功能轉(zhuǎn)移到手機平臺是軟件發(fā)展的一個必然趨勢。而基于Android的教學工作量管理系統(tǒng),正是對這一趨勢的良好體現(xiàn)。該系統(tǒng)在原有的Windows版桌面程序的基礎(chǔ)上二次開發(fā),將部分易操作的功能轉(zhuǎn)移到手機端。這樣能為教師的工作量錄入和管理提供方便,用戶能隨時隨地通過手機上傳自己的工作量信息、查看工作量統(tǒng)計信息等等,做到信息的實時化。與傳統(tǒng)WEB應(yīng)用進行良好的互補。
2 系統(tǒng)設(shè)計要求
本系統(tǒng)是在原有的基于Windows平臺的教學工作量管理系統(tǒng)的基礎(chǔ)上,將部分適合在手機端操作的系統(tǒng)功能,移植到手機端,方便教職工進行教學工作量的管理工作。設(shè)計的重點是,Windows平臺下,已有的業(yè)務(wù)邏輯可以通過Android端直接訪問,這樣就大大減少了開發(fā)的代碼量,也降低了開發(fā)風險。WebService為我們提供了這樣的跨平臺訪問的技術(shù)和方法,設(shè)計思路如下:
首先,將Windows平臺的相關(guān)業(yè)務(wù)邏輯用Web Service技術(shù)進行封裝,為手機端提供業(yè)務(wù)調(diào)用的接口。
其次,在手機端安裝個SOAP Web service客戶端開發(fā)包——Ksoap2-android,實現(xiàn)在Android平臺調(diào)用Web Service。
最后,開發(fā)Android應(yīng)用程序界面,調(diào)用Ksoap2-android提供的方法實現(xiàn)Windows平臺業(yè)務(wù)邏輯的訪問。
3 系統(tǒng)集成的實現(xiàn)
在教學工作量系統(tǒng)中,實現(xiàn)移動平臺和Windows平臺系統(tǒng)整合的過程如下:
3.1 創(chuàng)建并發(fā)布WebService
1)在VS2010中選擇【ASP.net 空web應(yīng)用程序】,創(chuàng)建新工程。
2)在新工程中添加Web服務(wù)。
3)在asmx文件中加入自己的WebService方法。
[WebMethod(Description = "按學期和部門獲取工作量信息")]
public string[] selectAllCargoInfor(string Term, int DepartmentID)
{
return dbOperation.selectAllCargoInfor(Term, DepartmentID).ToArray();
}
4)將項目發(fā)布。
3.2 在IIS7上部署WebService
1)在服務(wù)器上,啟動IIS,新建網(wǎng)站。添加過程如下,將發(fā)布后的WebService文件拷貝到服務(wù)器的某路徑下,然后將該路徑設(shè)置到網(wǎng)站的物理路徑中。
圖1 添加網(wǎng)站參數(shù)設(shè)置
2) 啟動該網(wǎng)站的目錄瀏覽,即可通過網(wǎng)頁訪問測試WebService提供的服務(wù)。
圖2 部分WebService服務(wù)
3.3 Android平臺調(diào)用WebService
1)下載Ksoap2-android jar包
KSoap2 Android 是Android平臺上一個高效、輕量級的SOAP開發(fā)包,等同于Android平臺上的KSoap2的移植版本。
2) 在Android工程中引入ksoap2-android類庫。
先將第三方j(luò)ar包拷貝到工程的libs目錄下,再將其加入到工程的Build Path中。
3)調(diào)用WebService接口
核心代碼如下:
private static String NAMESPACE = "http://tempuri.org/";
private static String URL = "http://IP:端口/Service1.asmx";
private static String SOAP_ACTION = "http://tempuri.org/";
public static List
List
SoapObject request = new SoapObject(NAMESPACE, webMethName); request.addProperty("wageId",wageId);
request.addProperty("psd",psd);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.dotNet = true; envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
try { androidHttpTransport.call(SOAP_ACTION+webMethName, envelope);
SoapObject response = (SoapObject) envelope.getResponse();
int count=response.getPropertyCount();
for(int index=0;index } } catch (Exception e) { e.printStackTrace(); } return items; } 4) 在AndroidManifest.xml中配置添加訪問網(wǎng)絡(luò)的權(quán)限。 4 結(jié)束語 本文介紹了教學工作量管理系統(tǒng)如何應(yīng)用WebService技術(shù)實現(xiàn)移動平臺和Windows平臺的系統(tǒng)整合。目前該系統(tǒng)在電腦和手機平臺上均運行良好,客戶滿意。 參考文獻: [1] yexuanbaby. WebService 的創(chuàng)建,部署和使用[EB/OL]. [2013-06-05]. http://blog.csdn.net/yexuanbaby/article/details/9029605/ [2] 柳峰. Android平臺調(diào)用WebService詳解[EB/OL].[2011-05-18].http://blog.csdn.net/lyq8479/article/details/6428288.