程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 使用遠程對象

使用遠程對象

編輯:關於JAVA

RMI全部的宗旨就是盡可能簡化遠程對象的使用。我們在客戶程序中要做的唯一一件額外的事情就是查找並從服務器取回遠程接口。自此以後,剩下的事情就是普通的Java編程:將消息發給對象。下面是使用PerfectTime的程序:

 

//: DisplayPerfectTime.java
// Uses remote object PerfectTime
package c15.ptime;
import java.rmi.*;
import java.rmi.registry.*;

public class DisplayPerfectTime {
  public static void main(String[] args) {
    System.setSecurityManager(
      new RMISecurityManager());
    try {
      PerfectTimeI t = 
        (PerfectTimeI)Naming.lookup(
          "//colossus:2005/PerfectTime");
      for(int i = 0; i < 10; i++)
        System.out.println("Perfect time = " +
          t.getPerfectTime());
    } catch(Exception e) {
      e.printStackTrace();
    }
  }
} ///:~


ID字串與那個用Naming注冊對象的那個字串是相同的,第一部分指出了URL和端口號。由於我們准備使用一個URL,所以也可以指定因特網上的一台機器。
從Naming.lookup()返回的必須造型到遠程接口,而不是到類。若換用類,會得到一個違例提示。
在下述方法調用中:
t.getPerfectTime( )
我們可看到一旦獲得遠程對象的句柄,用它進行的編程與用本地對象的編程是非常相似(僅有一個區別:遠程方法會“擲”出一個RemoteException違例)。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved