国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
RMI規(guī)范--第四章
RMI規(guī)范--第四章
客戶機接口
程序員在編寫使用遠程對象的 applet 或應(yīng)用程序時,需要注意 java.rmi 包
中可用的 RMI 系統(tǒng)客戶機可視接口。
4.1 遠程接口
package java.rmi;
public interface Remote {}
java.rmi.Remote 接口用來識別所有遠程接口;所有遠程對象必須直接或間接
實現(xiàn)此接口。
實現(xiàn)類可以實現(xiàn)任意數(shù)目的遠程接口,并可擴展其它遠程實現(xiàn)類。RMI 提供一些
遠程對象實現(xiàn)可以擴展的類,有助于遠程對象的創(chuàng)建。這些類是
java.rmi.server.UnicastRemoteObject

java.rmi.activation.Activatable。
有關(guān)如何定義遠程接口的詳細信息,參見“java.rmi.Remote 接口”(2.4.1)一
節(jié)。
4.2 RemoteException 類
類 java.rmi.RemoteException 是許多在執(zhí)行遠程方法調(diào)用時可能發(fā)生的、與
通信有關(guān)的異常的通用超類。遠程接口中的每種方法(也是一個接口)必須在其
throws 子句中列出 RemoteException(或其超類,如
java.io.IOException 或 java.lang.Exception)。
package java.rmi;
public class RemoteException extends java.io.IOException
{
public Throwable detail;
public RemoteException();
public RemoteException(String s);
public RemoteException(String s, Throwable ex);
public String getMessage();
public void printStackTrace();
public void printStackTrace(java.io.PrintStream ps);
public void printStackTrace(java.io.PrintWriter pw);
}

RemoteException 可用詳細消息(即 s)和一個嵌套異常(即 ex,Throwable)
進行構(gòu)造。嵌套異常 ex 在構(gòu)造函數(shù)的第三種形式中被指定為參數(shù),通常是 RMI
調(diào)用過程中發(fā)生的基本 I/O 異常。
getMessage 方法返回異常的詳細消息,包括嵌套異常(如果有)中的消息。
printStackTrace 方法在類 java.lang.Throwable 中將被覆蓋掉,以打印嵌套異
常的堆棧跟蹤。
4.3 Naming 類
java.rmi.Naming 類提供存儲和獲得對遠程對象注冊服務(wù)程序中遠程對象進行
引用的方法。Naming 類中的方法以如下形式的,URL 格式的 java.lang.String
作為其中的一個參數(shù):
//host:port/name
其中 host 是注冊服務(wù)程序所在的主機(遠程或本地),port 是注冊服務(wù)程序
接收調(diào)用的端口號,name 是注 冊表未作出解釋的簡單字符串。host 和 port
是可選的。如果省略了 host,則主機缺省值為本地 主機。如果省略了 port,
則端口缺省值為 1099,即 RMI 系統(tǒng)注冊服務(wù)程序 rmiregistry 所用的“眾所
周知”的端口。
為遠程對象綁定名稱即為稍后使用的遠程對象關(guān)聯(lián)或注冊名稱,可用于查詢該遠
程對象??梢允褂?Naming 類的 bind 或 rebind 方法將遠程對象與名稱相關(guān)聯(lián)
當(dāng)遠程對象已用 RMI 注冊服務(wù)程序在本地主機上進行過注冊(綁定)后,遠程
(或本地)主機上的調(diào)用程序就可以按名稱查詢遠程對象、獲得其引用,然后在
對象上調(diào)用遠程方法。必要時,某一主機上運行的服務(wù)器可以共享一個注冊服務(wù)
程序。
服務(wù)器的各個進程也可創(chuàng)建和使用自己的注冊服務(wù)程序
(詳細信息,參見 java.rmi.registry.LocateRegistry.createRegistry 方法)
package java.rmi;
public final class Naming
{
public static Remote lookup(String url)
throws NotBoundException, java.net.MalformedURLException,
RemoteExceptio
n;
public static void bind(String url, Remote obj)
throws AlreadyBoundException, java.net.MalformedURLException,
RemoteExce
ption;
public static void rebind(String url, Remote obj)
throws RemoteException, java.net.MalformedURLException;
public static void unbind(String url)
throws RemoteException, NotBoundException, java.net.MalformedURLExce
ptio
n;
public static String[] list(String url)
throws RemoteException, java.net.MalformedURLException;
}
lookup 方法返回與名稱的文件部分相關(guān)聯(lián)的遠程對象。如果名稱未綁定到對象上
,則拋出 NotBoundException。
bind 方法將把指定名稱綁定到遠程對象上。如果該名稱已綁定到某一對象上,
則拋出 AlreadyBoundException。
rebind 方法總將名稱綁定到對象上,無論該名稱是否已綁定。原有綁定將丟失。
unbind 方法將取消名稱和遠程對象間的綁定。如果沒有綁定,則拋出 NotBound
Exception。
list 方法返回一個 String 對象的數(shù)組,該對象包含注冊服務(wù)程序中綁定 URL
的快照。
為了向注冊服務(wù)程序查詢其內(nèi)容列表,只需要 URL 上的主機名和端口信息;因此
,URL 的“file”部分將被忽略。

----------------------------------------------------------------------
----------
注意 - 這些方法也可能拋出 java.rmi.AccessException。AccessException 表
示調(diào)用程序無執(zhí)
行特定操作的權(quán)限。例如,只有運行注冊服務(wù)程序的主機上的本地客戶機才允許
執(zhí)行 bind、rebind
和 unbind 操作。但任何非本地客戶機都可調(diào)用 lookup 操作。
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
創(chuàng)建RMI總結(jié)應(yīng)用的步驟
rmi(Remote Method Invocation ) 學(xué)習(xí) - what's j...
RMI小例子一枚
JAVA NoClassDefFoundError
Java RMI基礎(chǔ)
Java RMI
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服