RMI对接口有着强烈的依赖。在需要创建一个远程对象的时候,我们通过传递一个接口来隐藏基层的实施细节。所以客户得到远程对象的一个句柄正好同一些本地的根代码连接,有后者负责通过网络通信。但我们并不关心这些事情,通过自己的接口句柄发送消息即可。
创建一个远程接口时,必须遵守下列规则:
1) 远程接口必须为public属性(不能有“包访问”;也就是说,他不能是“友好的”)。否则,一旦客户试图装载一个实现了远程接口的远程对象,就会得到一个错误。
2) 远程接口必须扩展接口java.rmi.Remote。
3) 除与应用程序本身有关的违例,远程接口中的每个方法都必须在自己的throws从句中声明java.rmi.RemoteException.
4) 作为参数或返回值传递的一个远程对象(不管是直接,还是本地对象中嵌入)必须声明为远程接口,不可声明为实施类。
三 远程接口的实施:
服务器必须包含一个扩展了UnicastRemoteObject类,并实现远程接口。这个类也可以含有附加的方法,但客户只能使用远程接口中的方法。因为客户是指向接口的一个句柄,而不是它的哪个类。
必须为远程对象定义构造方法,即使只准备定义一个默认构造方法,用它调用基础类构造方法。必须把它明确地编写出来,因为它必须“掷”出RemoteException违例。
四 代码存根:
当客户代码调用一个远程对象上的远程方法是,实际上是调用一个Java编程语言的普通方法,这个方法是封装在stub(代码存根)的代用对象。存根(Stub)是远程对象在客户端的代理,它将RMI调用传递给服务器端的骨架(Skeleton),后者负责将该调用传递给实际的远程方法。
要完成这个工作可使用rmic编译器,rmic编译器生成远程对象的存根和骨架。
代码存根在服务器端创建,必须驻留于客户端。
分享到:
相关推荐
### RMI原理及应用知识点详解 #### 一、RMI简介与背景 - **RMI (Remote Method Invocation)** 是一种允许在不同的Java虚拟机(JVM)之间调用方法的技术。它使得开发人员能够像调用本地对象一样调用远程对象的方法,极...
Java自带了一些用于RMI开发的工具: - `rmiregistry`:RMI注册表服务,用于存储和查找远程对象。 - `rmic`:编译远程接口,生成必要的Stub和Skeleton类。 - `rmid`:RMI运行时守护进程,管理远程对象的激活和持久化...
**RMI原理及应用详解** 远程方法调用(Remote Method Invocation,简称RMI)是Java平台提供的一种分布式计算技术,允许在不同的Java虚拟机(JVM)之间进行对象方法的透明调用。RMI的核心思想是使Java对象能够跨越...
二、RMI开发步骤 1. 定义远程接口:创建一个接口,继承`Remote`,并声明远程方法。 2. 实现远程接口:创建实现该接口的类,包含具体业务逻辑。 3. 创建RMIServer:在服务器端启动RMI服务,创建远程对象实例,并在RMI...
同时,这也有助于理解RMI的工作原理,包括远程方法调用的过程,对象的传输机制,以及如何进行跨网络的交互。 在实际项目中,RMI常用于构建分布式系统,例如分布式数据库、分布式缓存、分布式计算等场景。了解并掌握...
RMI(Remote Method Invocation,...了解RMI的基本原理和使用后,我们可以根据这些源码学习如何设计和实现一个简单的分布式应用,如聊天室。同时,也可以进一步研究RMI的安全性、性能优化以及异常处理等方面的知识。
### RMI原理详解 #### 前言与背景 RMI(Remote Method Invocation,远程方法调用)是一种Java平台上的技术,它允许开发者在不同JVM间的对象间进行方法调用,就像是本地方法调用一样简单。这项技术的出现极大地简化...
远程方法调用(Remote Method Invocation,RMI)是Java提供的一种...这将帮助你理解RMI的工作原理,并为将来开发分布式应用打下基础。在实际应用中,RMI常用于构建分布式系统,如数据库连接池、分布式缓存服务等。
远程方法调用(RMI,Remote Method Invocation)是Java平台中用于构建分布式应用程序的关键技术。...理解RMI的工作原理和实现细节对于开发分布式Java应用至关重要,它能帮助开发者构建可扩展、健壮且易于维护的应用。
在Java世界中,远程方法调用(Remote Method ...理解并熟练掌握RMI的原理和使用,对于开发高效、可靠的Java网络应用至关重要。在JDK 1.5版本下,开发者可以利用RMI的优势,构建出高性能、可扩展的分布式系统。
Java RMI(Remote Method Invocation,远程方法调用)是Java平台提供的一种分布式计算技术,它允许Java对象在不同的网络...通过实践提供的"rmi"代码示例,你可以深入理解RMI的工作原理,并掌握如何在实际项目中使用它。
**远程方法调用(Remote Method Invocation,...理解RMI的工作原理和关键组件,对于开发高效、可靠的分布式应用至关重要。通过正确使用RMI,开发者可以构建出可扩展、易于维护的分布式系统,满足各种复杂的业务需求。
RMI是Java在分布式环境中实现对象间通信的重要手段,使得开发者可以像操作本地对象一样操作远程对象,极大地简化了分布式应用的开发。 ## 1. RMI 基本概念 ### 1.1 远程接口 (Remote Interface) 远程接口定义了...
《Synaptics RMI3 触摸芯片编程详解——基于S3508》 ...通过深入学习“Synaptics_RMI3_Specification.pdf”,开发者不仅可以掌握S3508的硬件特性和操作方法,还能了解到RMI3协议的精髓,从而在项目开发中得心应手。
RMI使得开发者可以像调用本地对象一样调用网络上的对象,极大地简化了分布式应用程序的开发。本项目提供的“java RMI实现代码”包括客户端和服务器端的示例,通过清晰的代码注释帮助理解RMI的工作原理。 一、RMI的...
Java RMI(Remote Method Invocation,远程方法...虽然现代Java开发中,RMI可能不是首选的分布式计算解决方案(例如,Web服务和RESTful API更为流行),但了解RMI的基本工作原理对于理解Java的分布式特性仍然很有价值。
Java开发工具包(JDK)自带了RMI的支持,包括编译、运行和调试工具。例如,`rmic`用于生成远程对象的stub和skeleton,`rmiregistry`用于启动RMI注册表,`rmid`管理服务器端的Java虚拟机。 **安全性与性能优化** ...
在进行RMI开发时,确保理解并适当地处理这些问题是非常重要的。 压缩包文件"zrmi"可能包含了上述步骤中的源代码文件,包括远程接口定义、远程实现类、服务器端启动类和客户端调用类。通过查看这些源代码,你可以更...
RMI的基本原理是,通过Java序列化机制,将远程对象的方法调用和参数转化为可以在网络上传输的数据,然后在远程服务器上执行相应的方法,并将结果返回给客户端。这一过程涉及的主要组件包括远程接口、远程对象、...
首先,让我们深入理解RMI的工作原理。RMI系统由两部分组成:客户端和服务器端。客户端通过接口调用远程对象的方法,而这些调用实际上被转换为网络请求,发送到服务器端。服务器端接收到请求后,执行相应的方法,并将...