栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Java

Java RMI简单实例

Java 更新时间:发布时间: 百科书网 趣学号

Java RMI详细介绍及简单实例

Service
import java.rmi.Remote;
import java.rmi.RemoteException;

interface TestService extends Remote{
    String say(String name) throws RemoteException;
}

//定义实现类
public class TestServiceImpl implements TestService {
    private int i = 0;
    @Override
    public String say(String name) {
        System.out.println("[Service] " + name + " -- say hello " + ++i);
        return name + "say hello"; }
}
Service Provider

先启动服务提供者 Provider

import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
import java.rmi.server.UnicastRemoteObject;

public class TestServiceProviderMain {
    public static void main(String[] args) throws Exception{
        System.out.println("Service Provider 已启动");
        //实例化要暴露给远程的接口
        TestService impl = new TestServiceImpl();
        //导出本地接口服务,端口8020
        TestService testService = (TestService)UnicastRemoteObject.exportObject(impl, 8020);
        //开启服务注册中心
        Registry registry = LocateRegistry.createRegistry(8021);
        //注册服务
        registry.rebind("testService", testService);
    }
}
Service Consumer
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;

public class TestConsumerMain {
    public static void main(String[] args) throws Exception{
        //注册中心
        Registry registry = LocateRegistry.getRegistry(8021);
        //发现服务
        TestService testService = (TestService)registry.lookup("testService");
        //调用服务业务
        String str = testService.say("小倩");
        System.out.println("[Consumer] get remote info --- " + str);
    }
}

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/601489.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号