📄 64.txt
字号:
//
远程调用
必须生成存根
实现该接口的服务器类rmic
启动服务器
安全管理器
启动rmi注册表
//
import java.rmi.*;
import java.rmi.server.*;
public class BindTest
{
public static void main(String[] args)
{
try
{
String[] bindings = Naming.list("");
for(int i =0;i<bindings.length;i++)
{
System.out.println(bindings[i]);
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
////
import java.rmi.*;
import java.rmi.server.*;
public class RmiClientTest
{
public static void main(String[] args)
{
System.setProperty("java.security.policy","client.policy"); //set policy
System.setSecurityManager(new RMISecurityManager());
String url = "rmi://localhost/";
try
{
Server c1 = (Server) Naming.lookup(url+"toaster");
Server c2 = (Server) Naming.lookup(url+"oven");
System.out.println(c1.getDescription());
System.out.println(c2.getDescription());
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
//
// rmi
import java.rmi.*;
import java.rmi.server.*;
public class RmiTest
{
public static void main(String[] args)
{
try
{
System.out.println("Constructing....");
Rmi p1 = new Rmi("Toaster");
Rmi p2 = new Rmi("Oven");
System.out.println("Binding server ....");
Naming.rebind("toaster",p1);
Naming.rebind("oven",p2);
System.out.println("Waiting for....");
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
class Rmi extends UnicastRemoteObject implements Server
{
public Rmi (String s) throws RemoteException
{
name = s;
}
public String getDescription() throws RemoteException
{
return "I am a "+name+". Buy me!";
}
private String name;
}
interface Server extends Remote
{
String getDescription() throws RemoteException;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -