RMI有注册端口和通信端口。
通过以下代码设置的是注册端口:
LocateRegistry.createRegistry(port); //注册端口
注册端口默认是1099
通过以下代码设置的是通信端口:
UnicastRemoteObject.exportObject(rmiService, 0); //随机通信端口
其中第二个参数是通信端口,0表示随机生成通信端口!
还可以通过以下代码来设置通信端口:
RMISocketFactory.setSocketFactory(new MyRMISocket(1000));
其中MyRMISocket对象为自定义RMI socket工厂类:
public class MyRMISocket extends RMISocketFactory {
private int myPort;
public MyRMISocket(int myPort) {
super();
this.myPort = myPort;
}
public Socket createSocket(String host, int port)
throws IOException{
return new Socket(host,port);
}
public ServerSocket createServerSocket(int port)
throws IOException {
if (port == 0)
port = myPort;//不指定就随机
return new ServerSocket(port);
}
}
一般为了穿越防火墙都需要指定固定的通信端口!
分享到:
相关推荐
【标题】:“一个基于RMI(Remote Method Invocation)的小巧好用的框架” 【描述】:RMI是Java中用于实现远程对象调用的技术,它允许一个Java对象在某一台机器上执行另一个Java对象的方法。这个框架利用了RMI的...
我们实现的聊天工具采用传统的C/S模式,其功能类似于WEB聊天室,用户可以在聊天室中...客户端软件提供用户登录服务器,发送信息的功能,服务器程序则负责接收用户登录请求转发聊天信息并提供一个界面对服务器进行管理。
RMI(Remote Method Invocation)是Java平台上的一个关键特性,它允许Java对象在不同的 JVM(Java虚拟机)之间进行通信,实现分布式计算。这个“rmi程序框架示例”提供了有关如何构建和运行RMI应用程序的基本知识。 ...
RMI的工作原理基于对象的分布式计算模型,它允许一个Java对象调用位于另一台机器上的对象的方法。这一过程对程序员来说透明,使得编写分布式应用变得相对简单。以下是关于RMI的关键知识点: 1. **注册表(Registry...
本资源分享的是一个通用的RMI服务器框架,它为开发者提供了一个基础平台,用于快速搭建和实现自己的RMI服务。 首先,我们来理解RMI的基本概念。RMI是一种Java平台上的机制,它允许Java对象在不同的JVM之间进行通信...
【基于RMI的远程控制器(JAVA版)】是一款利用Java的...总之,基于RMI的远程控制器(JAVA版)利用了Java的强大特性,提供了跨网络的远程控制功能,对于学习RMI和分布式系统开发的开发者来说,是一个有价值的实践案例。
在本项目中,我们构建了一个基于RMI的分布式议程服务,旨在提供一个跨网络的会议管理平台,让不同客户端可以共享和操作会议议程。 首先,我们需要理解RMI的核心概念。RMI系统由两部分组成:远程接口和远程对象。...
1. **RMI概念**:RMI是Java平台提供的一个标准API,它允许开发者在Java应用中调用远程对象的方法,就像调用本地对象一样。RMI的核心组件包括远程接口、远程对象、注册表和客户机。 2. **远程接口**:远程接口定义了...
RMI是Java平台内建的一种远程对象调用技术,它允许一个Java对象调用另一个在不同JVM上的对象的方法,非常适合分布式系统中的组件交互。Socket则是Internet协议的基础,它提供了进程间通信的能力,让运行在不同设备上...
RMI是Java提供的一种机制,使得一个Java对象能够调用运行在不同JVM上的另一个Java对象的方法。这涉及到三个关键组成部分:远程接口、远程实现和RMIServer。远程接口定义了可供远程访问的方法,远程实现实现了这些...
在这个“基于JAVA RMI的聊天室”项目中,开发者利用RMI技术构建了一个简单的多用户交互系统,让用户可以在不同的计算机上进行实时聊天。 ### 1. JAVA RMI原理 RMI允许Java对象在不同的Java虚拟机之间进行方法调用...
分布式对象技术课程实践:基于rmi的数据库中间件设计,并利用中间件建立一个数据库应用(Java web项目)。 需求分析 数据库操作中间件: 提供数据库连接接口。该接口可使“数据库操作中间件”连接当前主流的数据库...
1. 客户端通过RMI调用远程对象的一个方法,这个调用会被转换为一个RMI调用请求。 2. RMI stub(桩)接收到请求后,会将RMI调用转换为IIOP消息。 3. IIOP消息通过网络发送到服务器端的ORB。 4. 服务器端ORB接收到IIOP...
分布式Java RMI(Remote Method Invocation)技术是一种在Java平台中实现分布式计算的重要工具,它允许一个对象调用在不同 JVM(Java Virtual Machine)上的另一个对象的方法。在这个项目中,我们利用RMI构建了一个...
RMI允许Java对象在不同的JVM之间进行交互,仿佛它们是在同一个进程中一样。这种模型常用于构建复杂的分布式系统,如电力系统中的各个模块之间的通信。 在本文档中提到的RMI平台,由两个主要部分组成:消息传送模块...
基于RMI的分布式架构设计,详细描述了如何架构RMI分布式系统,并阐述了原理实现
定义一个扩展远程接口(Remote)的接口,这个接口方法将供给客户端调用,该接口中的每...如果客户端和服务端不在同一台电脑上,则需要对刚才定义的服务类采用rmic 编译一个客户端的框架类_stub并拷贝到客户端的类路径下
【基于RMI分布式会议系统】是一种使用Java Remote Method Invocation(远程方法调用)技术构建的分布式应用程序,旨在模拟和管理虚拟会议。RMI是Java提供的一种机制,它允许在不同的Java虚拟机(JVM)之间透明地调用...