6
回答
请问在Java下如何使用RMI来发布一个服务,最简单的方式如何实现?
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   
我想使用RMI的方式对外发布一个服务,轻量级的实现如何做,就是不用加任何jar包,用java原生代码实现。
举报
grantliping
发帖于5年前 6回/1K+阅
共有6个答案 最后回答: 5年前

Java原生的可以,可以不需要加额外的包,因为RMI是J2EE规范之一啊,例子如下:

1、发布RMI服务:

先导入

import java.net.MalformedURLException;
import java.rmi.AlreadyBoundException;
import java.rmi.Naming;
import java.rmi.NotBoundException;
import java.rmi.RemoteException;
import java.rmi.registry.LocateRegistry;

 

然后定义服务接口:

public interface SimpleRmiService extends Remote {

 public abstract Date getServerTime() throws RemoteException;

}

 创建接口实现类: 

 public SimpleRmiServiceImpl() throws RemoteException {}

 public Date getServerTime() throws RemoteException {
  return new Date();
 }

 启动服务代码:

SimpleRmiService simpleRmiService = new SimpleRmiServiceImpl();

LocateRegistry.createRegistry(8888);

Naming.bind("rmi://localhost:8888/Demo1", simpleRmiService);

客户端调用:

只需要接口 SimpleRmiService 即可,代码如下:

SimpleRmiService simpleRmiService = (SimpleRmiService) Naming.lookup("rmi://localhost:8888/Demo1");

 

搞定!

 

顶部