構(gòu)建一個(gè)簡(jiǎn)單的RMI應(yīng)用程序

          第一步,創(chuàng)建remote接口:
              定義接口extends Remote;
              定義接口方法,注意需要throws RemoteException;

          第二步,實(shí)現(xiàn)remote接口:
              實(shí)現(xiàn)接口里定義的各個(gè)方法;
              (optional)定義本地方法,即未在接口里定義的方法,client端看不到;
              定義static main方法,這里需要實(shí)現(xiàn)下列幾步:
                  System.setSecurityManager(new RMISecurityManager()); //創(chuàng)建并安裝安全管理器
                  取得args[0]參數(shù),實(shí)例化remote類obj;
                  Naming.rebind(args[0], obj); //綁定名字和對(duì)象

          第三步,創(chuàng)建客戶端類:
              主要就是定義static main方法,這里需要實(shí)現(xiàn)下列幾步:
                  取得args[0]指定的server名字;
                  用Naming.lookup(server名字)查找綁定的對(duì)象obj;
                  調(diào)用obj的各個(gè)方法,就像本地調(diào)用一樣;

          第四步,創(chuàng)建policy文件,例如,創(chuàng)建rmi.policy文件:
              grant {
                  // Allow everything for now
                  permission java.security.AllPermission;
              };
              注意,以上僅是用作練習(xí)。

          第五步,啟動(dòng)rmiregistry:
              在dos窗口下,輸入:start rmiregistry(回車)
              會(huì)彈出新窗口,表示正在運(yùn)行rmiregistry;
              注意!一定要在remote類所在的目錄下執(zhí)行該命令。

          第六步,啟動(dòng)server端程序:
              輸入命令:java server名 -Djava.security.policy="policy完整路徑名"

          第七步,啟動(dòng)client端程序:
              輸入命令:java server名

          現(xiàn)在就可以看到client-server間的通訊了。

          補(bǔ)充:實(shí)際測(cè)試發(fā)現(xiàn),用一個(gè)helper對(duì)象封裝所有需要傳給remote類的方法參數(shù),比起一個(gè)個(gè)參數(shù)傳遞性能要好很多。
          helper對(duì)象一定要implements Serializable接口。



          posted on 2011-02-21 23:30 koradji 閱讀(275) 評(píng)論(0)  編輯  收藏 所屬分類: java

          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(2)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          db2

          dos

          Groovy

          Hibernate

          java

          WAS

          web application

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 黄大仙区| 武宁县| 永寿县| 奉贤区| 夏邑县| 镇坪县| 汪清县| 依兰县| 东至县| 马鞍山市| 商水县| 青州市| 大庆市| 兰溪市| 福安市| 连城县| 保定市| 扎赉特旗| 德令哈市| 丰县| 玛沁县| 大悟县| 科尔| 宝兴县| 永吉县| 大渡口区| 黑河市| 安宁市| 社会| 汉源县| 库车县| 丹东市| 武冈市| 青河县| 信阳市| 濮阳县| 曲水县| 都江堰市| 田林县| 资阳市| 县级市|