>(http://www.cnblogs.com/jackyrong/archive/2005/01/28/99025.html)和<<基于WEBSERVICE的課件系統(2)>>(http://www.cnblogs.com/jackyrong/archive/2005/01/28/99027.html)中,回顧了當初自己畢業設計中,自己實現的一個課件搜索系統的情況,這是為了模擬實現。NET和JAVA" />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

基于WEBSERVICE的課件系統(三)

系統 1617 0

在前面的<<基于WEBSERVICE的課件系統(1)>>( http://www.cnblogs.com/jackyrong/archive/2005/01/28/99025.html )
和<<基于WEBSERVICE的課件系統(2)>>( http://www.cnblogs.com/jackyrong/archive/2005/01/28/99027.html )中,回顧了當初
自己畢業設計中,自己實現的一個課件搜索系統的情況,這是為了模擬實現。NET和JAVA的WEBSERVICE互操作性而搞的,下面繼續貼出其他部分,以反省當初自己設計的不足。

4.5 ? .NET客戶端――Java端WebService的設計
反過來,我也設計了一個用 Java 寫的 WebService 和一個由 asp.net 寫的 .Net 客戶端,其中用 Java 寫的 WebService 對外提供 WebService 接口,供查詢課件所用。而由 asp.net 寫的 .Net 客戶端則模擬其他網站的課件搜索模塊。
?
主要設計方法思想:
  1) Java WebService 的設計
????
?? 利用 Axis ,可以很方便地將一個 Java 的類文件發布為 WebService, 只需要將 Java 的類文件改后綴名為 .jws, 之后運行, Axis 就會將類文件編譯,生成相應的 wsdl 。其設計思想為:
??? ,首先在數據庫中對輸入的參數進行數據庫查詢,如果找到結果,   則對記錄集中的每條數據提取出來,生成指定格式的 XML 。如果沒有找到任何結果,則返回一個空的字符串。由于在 WebService 中, XML 是傳播的最好介質,所以我用字符串組合 xml 的形式,避免了用 Java 或者 .Net 中各種復雜的數據類型在 WebService 中傳遞遇到的不一致性和復雜性的問題。
??
 編譯程序,就可以用 http://localhost:8080/axis/msearchjavaws.jws 生成 WSDL 文件。

2) .Net 客戶端的設計
?
? 首先使用 vs.net 2002中的UDDI自動搜索工具,將由Java端生成的WSDL文件導入,系統自動生成代理類。之后就可以利用該代理類來調用WebService。

主要算法:
 <o:p></o:p>

  初始化 WebService代理類,引入WebService;<o:p></o:p>

??? 初始化xmldocument類,為解釋xml做準備;<o:p></o:p>

??? 將客戶端的查詢條件組合后形成sql查詢語句;<o:p></o:p>


  調用WebService;<o:p></o:p>

  將返回的 WebService結果以字符串流的形式賦值給字符串;<o:p></o:p>

if (字符串為空)
{<o:p></o:p>

????????? 輸出暫時沒結果<o:p></o:p>

<o:p></o:p>

else<o:p></o:p>

{
初始化dataset;<o:p></o:p>

用程序生成
將WebService返回的字符串讀入dataset;<o:p></o:p>

????  讀取xml中的<kejian>標記,形成結點集;
? for (I=0;I<結點集個數-1;I++)<o:p></o:p>

{<o:p></o:p>

 逐個結點解釋 XML,將XML中的每個結點數據提取出來;<o:p></o:p>

<o:p></o:p>

}<o:p></o:p>

  用程序動態生成新的數據表 kejian;<o:p></o:p>

??? 將xml中已解釋的每個結點映射到kejian表中;<o:p></o:p>

  將 kejian表的數據源綁定到asp.net中顯示數據的datagrid控件。<o:p></o:p>

??? 顯示搜索結果;
?? 在上面的算法中,由于 asp.net中使用的是服務端控件datagrid,所以綁定到它上面的是dataset類型的數據。在讀取Java端的WebService返回的xml字符串后,必須將字符串流用.Net中的xmldocument類讀取,轉變為.Net中能夠接受的dataset形式。其中比較關鍵的是要將XML中的每個結點映射為數據表中的每一條記錄
5.1 在移動設備中使用 WebService
???
WebService 的使用十分廣泛,在移動設備中也可以通過調用 WebService 實現很多功能。在這次的設計中,我將原來系統中的日歷事件提醒功能移植到移動設備(手機),使得用戶通過在手機上登陸,就可以查看當天有哪些事件需要提醒。具體設計如下:
???
在原先我們小組設計的系統中,有一項是事件日歷提醒功能。用戶可以在登陸系統后,選擇日歷中某天后,可以設定某天中需要提醒的事件,設定需要提前幾天提醒。這樣,當用戶再次登陸系統后,如果當天有事件提醒,就會在系統中顯示出來,提醒用戶要注意。而由于遠程教育的特殊性,以及科技通訊技術的日益發達,用戶可以通過手機登陸系統,輸入自己的用戶名和密碼,在登陸后,如果當天有事件需要提醒的話,就會在手機上顯示。系統的架構圖為:

?? ? 由于條件的限制,這次我只能采用 Nokia 6210 模擬器進行模擬,該模擬器能完全模擬實際手機的尺寸大小和顯示效果。客戶端的開發全部采用微軟的 VS.NET 2002 及移動工具開發包。而整個過程都是調用 Java 端的 WebService 的,由于 WebService 傳遞的是 XML, 因此十分適宜在移動設備上使用。下面是有關的主要界面 :


? 當用戶在手機上輸入地址后,會出現圖 1 的界面。之后用戶輸入用戶名和密碼,此時客戶端會調用登陸驗證的 WebService, 如果用戶輸入正確,就會繼續調用日歷提醒的 WebService, WebService 調用后臺數據庫,查看該用戶當天是否有事件提醒,如果有的話則返回要提醒的事件。由于手機屏幕比較小的緣故,所以每屏只顯示一到兩條,用戶可以通過手機翻頁功能查看下一條事件。當查看每件事件的具體內容時,會出現圖 2 的界面。
???
由此可以看出, WebService 的精髓在于,通過 XML ,可以實現不同信息設備之間的資源共享。特別是在于移動設備方面,通過 XML WebService ,可以使編程變得簡單,而且擴展性十分好,能適應不同設備的大小。因為移動設備是“瘦”客戶端的緣故,所以就應該把邏輯計算等重要部分放到服務端去做。而服務端系統操作平臺的多樣性,開發語言的多樣性使得問題變得復雜。這些只有通過 WebService 去解決。




<o:p></o:p>

? }<o:p></o:p>

?

?

?

?

基于WEBSERVICE的課件系統(三)


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 一区二区三区欧美日韩 | 国产精品美女视频 | 性感毛片 | 一级毛片一级毛片a毛片欧美 | 免费观看一级欧美在线视频 | 五月天久久婷婷 | 四虎影院久久 | 亚洲成人在线视频观看 | 日韩欧美在线综合网高清 | 精品久久久久亚洲 | 欧美一级毛片高清免费观看 | 欧美精品99| 亚洲欧美日韩综合二区三区 | 国产午夜亚洲精品国产 | 二区三区 | 国产成人福利 | 欧美成人自拍 | 亚欧aⅴ天堂在线 | 免费a视频在线观看 | 久久com| 色拍自拍亚洲综合在线 | 久久草在线视频国产一 | 中国xxxwww | 成人夜色视频在线观看网站 | 色综合成人 | 国产亚洲精品久久久久久 | 亚洲精品乱码久久久久久麻豆 | 国产美女久久精品香蕉69 | 日日干综合 | 97精品在线播放 | 成人私拍福利视频在线 | 亚洲国产精品自产拍在线播放 | 国产成人免费片在线观看 | 日本免费一区二区三区在线看 | 四虎影院永久免费观看 | 在线免费观看亚洲 | 久久婷婷综合在线视频观看6 | 亚洲精品啪啪一区二区三区 | 日韩中文字幕不卡 | 中文字幕一区二区区免 | 免费99热在线观看 |