RMI学习入门-Helloworld的配置测试

在网上找了好多的这方面的文章,但是叙述不清楚给我们初学者很大的困扰,特写这篇文章,文中的源代码

为抄袭别人的,我只是把顺序,和配置方法重写了一遍,是初学者更好的入门,享受这种成就感,^_^

RMI是Java平台实现远程调用的规范,下面是一个小例子,本机测试通过

一共有三个java类,远程接口,服务端程序,客户端程序

 

放置文件的位置如下
假设服务器端在目录为
F:/rmiserver
|—Helloin.class
|—Hello.class
|—Hello_Stub.class

客户端的目录及文件为
F:/rmiclient
|—Helloworld.class
|—Helloin.class
|—Hello_Stub.class

先在各文件夹下写好源文件,然后编译使用javac *.java命令
然后执行rmic Hello命令生成Hello_Stub.class

放置好各文件的位置后就可以看效果了
首先打开cmd窗口,进入F:/rmiserver目录执行rmiregistry命令
然后再打开一个cmd窗口,进入F:/rmiserver目录执行java Hello命令
最后打开再一个cmd窗口,进入F:/rmiclient目录执行java Helloworld命令
你就可以在客户端看到结果了

一下是源程序:
远程接口:

import java.rmi.*;

public interface HelloIn extends java.rmi.Remote{
 String sayHello() throws RemoteException;
}

服务端程序:

import java.rmi.*;
import java.net.*;
import java.rmi.registry.*;
import java.rmi.server.*;

public class Hello extends java.rmi.server.UnicastRemoteObject implements HelloIn{
 public Hello() throws RemoteException{
  super();
 }
 public String sayHello() throws RemoteException{
  return "Hello,World!";
 }
 public static void main(String[] args){
  //System.setSecurityManager(new java.rmi.RMISecurityManager());
  try{
 
      Hello h=new Hello();
      java.rmi.Naming.rebind("hello",h);
      System.out.print("Ready......");
   }
   catch(Exception e){
    e.printStackTrace();
   }
 
 }
}


客户端程序:

import java.rmi.*;
import java.rmi.registry.*;

public class Helloworld{
 public static void main(String[] args){
  //System.setProperty( "java.security.policy", "client.policy" );
  //System.setSecurityManager(new java.rmi.RMISecurityManager());
  try{
   HelloIn hi=(HelloIn)Naming.lookup("//fengl/hello");
   for(int i=0;i<10;i++){
    System.out.println(hi.sayHello());
   }
  }
  catch(Exception e){
   e.printStackTrace();
  }
  }
 }
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值