java.rmi

java.rmi

提供 RMI 包。RMI 指的是遠程方法調用 (Remote Method Invocation)。它是一種機制,能夠讓在某個 Java虛擬機上的對象調用另一個 Java 虛擬機中的對象上的方法。可以用此方法調用的任何對象必須實現該遠程接口。調用這樣一個對象時,其參數為 "marshalled" 並將其從本地虛擬機傳送到遠程虛擬機(該遠程虛擬機的參數為 "unmarshalled")上。該方法終止時,將編組來自遠程機的結果並將結果傳送到調用方的虛擬機。如果方法調用導致拋出異常,則該異常將指示給調用方。

軟體包java.rmi 的描述
提供 RMI 包。RMI 指的是遠程方法調用 (Remote Method Invocation)。它是一種機制,能夠讓在某個 Java虛擬機上的對象調用另一個 Java 虛擬機中的對象上的方法。可以用此方法調用的任何對象必須實現該遠程接口。調用這樣一個對象時,其參數為 "marshalled" 並將其從本地虛擬機傳送到遠程虛擬機(該遠程虛擬機的參數為 "unmarshalled")上。該方法終止時,將編組來自遠程機的結果並將結果傳送到調用方的虛擬機。如果方法調用導致拋出異常,則該異常將指示給調用方。
從以下版本開始:
JDK1.1
什麼是RMI
遠程方法調用是一種計算機之間對象互相調用對方函式,啟動對方進程的一種機制,
使用這種機制,某一台計算機上的對象在調用另外一台計算機上的方法時,使用的程
序語法規則和在本地機上對象間的方法調用的語法規則一樣。
優點
這種機制給分布計算的系統設計、編程都帶來了極大的方便。
只要按照RMI規則設計程式,可以不必再過問在RMI之下的網路細節了,如:TCP和Socket等等。
任意兩台計算機之間的通訊完全由RMI負責。調用遠程計算機上的對象就像本地對象一樣方便。
1、面向對象:
RMI可將完整的對象作為參數和返回值進行傳遞,而不僅僅是預定義的數據類型。
也就是說,可以將類似Java哈西表這樣的複雜類型作為一個參數進行傳遞。
2、可移動屬性:
RMI可將屬性從客戶機移動到伺服器,或者從伺服器移動到客戶機。
3、設計方式:
對象傳遞功能使您可以在分散式計算中充分利用面向對象技術的強大功能,如二層和三層結構系統。
如果用戶能夠傳遞屬性,那么就可以在自己的解決方案中使用面向對象的設計方式。
所有面向對象的設計方式無不依靠不同的屬性來發揮功能,如果不能傳遞完整的對象——包括實現和類型
——就會失去設計方式上所提供的優點。
4、安全性:
RMI使用Java內置的安全機制保證下載執行程式時用戶系統的安全。
RMI使用專門為保護系統免遭惡意小程式侵害而設計的安全管理程式。
5、便於編寫和使用
RMI使得Java遠程服務程式和訪問這些服務程式的Java客戶程式的編寫工作變得輕鬆、簡單。
遠程接口實際上就是Java接口。
為了實現RMI的功能必須創建遠程對象任何可以被遠程調用的對象必須實現遠程接口。但遠程
接口本身並不包含任何方法。因而需要創建一個新的接口來擴展遠程接口。
新接口將包含所有可以遠程調用的方法。遠程對象必須實現這個新接口,由於新的接口擴展了
遠程接口,實現了新接口,就滿足了遠程對象對實現遠程接口的要求,所實現的每個對象都將
作為遠程對象引用。

相關詞條

熱門詞條

聯絡我們