• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    利用動態調用方式實現分布式應用

    發布: 2008-2-20 13:17 | 作者: 蘇洋 | 來源: 不詳 | 查看: 23次 | 進入軟件測試論壇討論

    領測軟件測試網

     

    上一講介紹了利用動態調用方式實現分布式應用時, 客戶端動態調用接口(DII)和服務對象動態骨架接口(DSI)的創建,下面用一個具體的例子來說明整個過程。
    1. 對象功能描述和系統簡要設計
      本例仍然模擬電信資費管理業務流程,在服務對象端注冊一個電話用戶。用戶在遠程客戶端查詢該用戶本月發生的電話費用。根據對象功能的說明,用UML描述出服務對象需要實現的功能:
      getFee() : float
      openAccout( string name ) : Agent
    2. 服務對象接口定義
      根據系統分析結果,用IDL編寫出服務對象方法描述程序TeleComm.idl:
      module TeleComm
      {
      interface Agent
      {
      float getFee();
      };
      interface AgentManager
      {
      Account openAccount(in string name);
      };
      };
    3. 接口的實現
    (1)Agent接口的實現
      public class AgentImpl extends DynamicImplementation
      {
      //構造AgentImpl類
      //get方法在invoke動態調用方法中按名字匹配調用
      public synchronized org.omg.CORBA.Object get(String name){
      //申請賬戶金額,生成賬戶對象
      }
      public void invoke(org.omg.CORBA.ServerRequest request){
      //申請可移植對象適配器
      //填寫調用參數,提出申請賬戶請求
      }
      }
    (2)AgentManager接口實現
      public class AgentManagerImpl extends DynamicImplementation{
      //構造AgentManager類
      public void invoke(org.omg.CORBA.ServerRequest request){
      //填寫調用參數表,向Agent對象提出業務請求,獲取Agent對象
      //……
      }
      }
    (3)服務器端程序設計
      public class Server {
      public static void main(String[] args) {
      //初始化ORB、申請POA和POA管理器
      //申請默認服務對象,激活POA管理器
      //等待調用請求
      //……
      }
    (4)客戶端程序設計
      public class Client {
      public static void main??????垰?????(String[] args) {
      //初始化ORB,定位Agentmanager對象
      //發出調用請求
      org.omg.CORBA.Request request=manager ._request(“getFee”);
      request.invoke();
      //查詢返回結果,取得返回值
      request.get_response();
      //異常處理
      //……
      }
    4. 程序設計及運行環境說明
      上述基于動態調用接口和動態骨架接口的程序是基于VisiBroker 4.5.1中間件環境開發的。其他環境下程序的實現方式和運行可能會有所差別。在VisiBroker環境下,按如下方式運行程序:
     。1)首先啟動VisiBroker Smart Agent事務代理;
     。2)啟動服務對象程序:vbj Server;
     。3)啟動客戶對象程序:vbj Client。
      其中vbj是VisiBroker for Java中的Java代碼解釋執行程序。讀者也可以用Java解釋工具java代替,但需要指定VisiBroker中的vbjorb等庫。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    22/2<12

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>