老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊(cè)、服務(wù)器等服務(wù)

使用java編寫一個(gè)rmi的方法

小編給大家分享一下使用java編寫一個(gè)rmi的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

創(chuàng)新互聯(lián)專注于企業(yè)成都全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、周口網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5響應(yīng)式網(wǎng)站商城建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為周口等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

 RMI 指的是遠(yuǎn)程方法調(diào)用 (Remote Method Invocation)。它是一種機(jī)制,能夠讓在某個(gè) Java虛擬機(jī)上的對(duì)象調(diào)用另一個(gè) Java 虛擬機(jī)中的對(duì)象上的方法。可以用此方法調(diào)用的任何對(duì)象必須實(shí)現(xiàn)該遠(yuǎn)程接口。

調(diào)用這樣一個(gè)對(duì)象時(shí),其參數(shù)為 "marshalled" 并將其從本地虛擬機(jī)發(fā)送到遠(yuǎn)程虛擬機(jī)(該遠(yuǎn)程虛擬機(jī)的參數(shù)為 "unmarshalled")上。該方法終止時(shí),將編組來自遠(yuǎn)程機(jī)的結(jié)果并將結(jié)果發(fā)送到調(diào)用方的虛擬機(jī)。如果方法調(diào)用導(dǎo)致拋出異常,則該異常將指示給調(diào)用方。

提供遠(yuǎn)端訪問的時(shí)候,我們首先需要定義遠(yuǎn)端能夠訪問哪些東西,在Java中,定義這類接口需要實(shí)現(xiàn)Remote接口

public interface Business extends Remote{
     public String echo(String msg) throws RemoteException;
}

定義完接口之后,這些功能是需要我們自己在Server端實(shí)現(xiàn)的,因此,聲明一個(gè)類實(shí)現(xiàn)我們提供接口。

public class BusinessImpl implements Business{

    @Override
    public String echo(String msg) throws RemoteException {
        if("quit".equalsIgnoreCase(msg)) {
            System.out.println("Server will be shutdown");
            System.exit(0);
        }
        System.out.println("Message from client:"+msg);
        return "Server response:"+msg;
    }
}

實(shí)現(xiàn)完這個(gè)方法之后,有一個(gè)問題是,怎么運(yùn)行,既然是遠(yuǎn)端訪問,肯定得有端口號(hào),肯定得有實(shí)例,所以我們還需要注冊(cè)我們的代碼

public class Server {

    public static final String SERVER_REGISTER_NAME = "BusineeDemo";
    
    public static void main(String[] args) throws RemoteException {
        int port = 2016;
        Business business = new BusinessImpl();
        UnicastRemoteObject.exportObject(business,port);
        Registry registry = LocateRegistry.createRegistry(1099);
        registry.rebind(SERVER_REGISTER_NAME, business);
    }
}

這里有兩個(gè)Java的類:UnicastRemoteObject和LocateRegistry

一個(gè)接口:Registry

Registry接口:對(duì)簡(jiǎn)單的遠(yuǎn)端對(duì)象提供一個(gè)遠(yuǎn)端接口用于提供存儲(chǔ)和獲取遠(yuǎn)端對(duì)象的引用,而這些是通過任意的String類型的變量名稱獲取,bind,unbind,rebind方法是用于更改注冊(cè)的這些名稱,lookup和list方法是用于查詢當(dāng)前當(dāng)前已經(jīng)綁定的對(duì)象。

UnicastRemoteObject類:用于導(dǎo)出一個(gè)遠(yuǎn)端對(duì)象

LocateRegistry類:是一個(gè)用來獲得遠(yuǎn)端調(diào)用對(duì)象引用的輔助類程序,主要是在一個(gè)特定的IP上構(gòu)建一個(gè)遠(yuǎn)端對(duì)象來接受來自特定端口的回調(diào)。

簡(jiǎn)單的服務(wù)端完成了,現(xiàn)在來看客戶端:

客戶端代碼就更加簡(jiǎn)單,前面我們提到我們可以通過Registry的lookup方法來獲取當(dāng)前已經(jīng)綁定的服務(wù),所以很自然,我們首先要獲得這個(gè)Registry

public class Client {

    public static void main(String[] args) throws RemoteException, NotBoundException {
        // Registry registry = LocateRegistry.getRegistry("localhost");
        Registry registry = LocateRegistry.getRegistry("localhost", 1099);
        Business business = (Business) registry.lookup(Server.SERVER_REGISTER_NAME);
        System.out.println(business.echo("Hello Server"));
    }
}

以上是使用java編寫一個(gè)rmi的方法的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


當(dāng)前文章:使用java編寫一個(gè)rmi的方法
本文URL:http://www.xueling.net.cn/article/jijpcg.html

其他資訊

在線咨詢
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP
主站蜘蛛池模板: 中国xxxx性xxxx产国 | 好了av第四综合 | 日本免费一级淫片a级中文字幕 | 欧洲MV日韩MV国产 | 中文字幕av亚洲精品一部二部 | 亚洲另类精品国产一级欧美忘忧草 | 激情久久AV一区AV二区AV三区 | 成年美女黄网站色大片 | 成人精品一区二区三区免费看 | 潮喷失禁大喷水无码 | 欧美日日爱| 福利网址| 亚洲无码一级日韩 | 日日操夜夜操影院 | 国产成人免费无码AV在线播放 | 成年人在线观看视频免费 | 亚洲VA中文字幕无码毛片 | 夜夜草网站 | 久久撸视频 | 色综合伊人色综合网站中国 | 成人天堂视频在线观看 | 好紧好湿好爽免费视频 | 国产成人福利片 | 无码被窝影院午夜看片爽爽 | 久久亚洲精品国产精品777777 | 色综合天天天天做夜夜夜夜做 | 日韩入口| 成人性色生活片免费看爆迷你毛片 | 精69xxxxxx在线观看 | 日韩AV高清在线看片 | 久久精品国产www456c0m | 亚洲一区二区三区四区五区不卡 | 亚洲成人看片 | 在线综合亚洲欧洲综合网站 | 国产在线欧美日韩精品一区 | a一级黄| 免费人妻无码不卡中文字幕18禁 | 匈牙利xxxx性hd极品 | 国产51人人成人人人人爽色哟哟 | 日韩免费中文字幕 | 香蕉人妻av久久久久天天 |