请问在Java下如何使用RMI来发布一个服务,最简单的方式如何实现?

grantliping 发布于 2013/03/08 08:29
阅读 1K+
收藏 1
我想使用RMI的方式对外发布一个服务,轻量级的实现如何做,就是不用加任何jar包,用java原生代码实现。
加载中
1
TavenLi
TavenLi

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");

 

搞定!

 

0
红薯
红薯
使用 RMI 注定你脱离不了 jar 包。
0
TavenLi
TavenLi
希望能帮到你
0
专业打酱油
专业打酱油
本地server不需要第三方的jar,你做好服务,把接口打成jar提供给使用方,就可以了
0
g
grantliping
嗯,我试试
0
opal
opal
提供http接口不就好了么,弄这么复杂做什么,给第三方一份文档就结束了。
返回顶部
顶部