文档详情

JAVA-RMI使用快速入门.doc

发布:2018-12-27约9.41千字共7页下载文档
文本预览下载声明
RMI原理及介绍 1.基本介绍 RMI目前使用Java远程HYPERLINK /wiki/消息消息交 换协议JRMP(Java Remote Messaging Protocol)进行通信。JRMP是专为Java的远程对象制定的协议。因此,Java RMI具有Java的“Write Once,Run Anywhere”的优点,是分布式应用系统的百分之百纯Java解决方案。用Java RMI开发的应用系统可以部署在任何支持HYPERLINK /wiki/JREJRE(Java Run Environment Java,运行环境)的平台上。但由于JRMP是专为Java对象制定的,因此,RMI对于用非Java语言开发的应用系统的支持不足。不能与用非Java语言书写的对象进行通信。 Java Remote Method Invocation ( RMI -- Java远程方法调用)允许您使用Java编写分布式对象。本文将介绍RMI的优点以及如何将其连接到现有的和原有的系统中,以及与用Java 编写的HYPERLINK /wiki/组件组件的连接。 RMI为采用Java对象的分布式计算提供了简单而直接的途径。这些对象可以是新的Java对象,也可以是围绕现有HYPERLINK /wiki/APIAPI的简单的Java包装程序。Java体现了“编写一次就能在任何地方运行的HYPERLINK /wiki/模式模式。而RMI可将Java模式进行扩展,使之可在任何地方运行”。因为RMI是以Java为核心的,所以,它将Java的安全性和可移植性等强大功能带给了分布式计算。务逻辑等属性移动到网络中最合适的地方。如果您要扩展Java在系统中的使用,RMI将使您充分利用其强大功能。 RMI可利用标准Java本机方法接口HYPERLINK /wiki/JNIJNI与现有的和原有的系统相连接。RMI还可利用标准HYPERLINK /wiki/JDBCJDBC包与现有的关系HYPERLINK /wiki/数据库数据库连接。RMI/JNI和RMI/JDBC相结合,可帮助您利用RMI与目前使用非Java语言的现有服务器进行通信,而且在您需要时可扩展Java在这些服务器上的使用。RMI可帮助您在扩展使用时充分利用Java的强大功能。 2.基本组成 一个正常工作的RMI系统由下面几个部分组成: 1)远程服务的接口定义 2)远程服务接口的具体实现 3)桩(Stub)和HYPERLINK /wiki/框架框架(Skeleton)HYPERLINK /wiki/文件文件 4)一个运行远程服务的服务器 5)一个RMI命名服务,它允许HYPERLINK /wiki/客户端客户端去发现这个远程服务 6)HYPERLINK javascript:linkredwin(类文件);类文件的提供者(一个HTTP或者FTP服务器) 7)一个需要这个远程服务的客户端程序 原理 RMI系统结构,在客户端和服务器端都有几层结构。 --------- ---------- | 客户 | | 服务器| ---------- ---------- | | ------------- ---------- | 占位程序 | | 骨干------------------ | 远 程 引 用 层 | ------------------------------------ | | ------------------------------------ | 传 输 层 | ------------------------------------ 方法调用从客户对象经占位程序(Stub)、远程引用层(Remote Reference Layer)和传输层(Transport Layer)向下,传递给HYPERLINK /wiki/主机主机, 然后再次经传 输层,向上穿过远程调用层和骨干网(Skeleton),到达服务器对象。 占位程序扮演着远程服务器对象的代理的角色,使该对象可被客户激活。 远程引用层处理语义、管理单一或多重对象的通信,决定调用是应发往一个服务器还是多个。传输层管理实际的连接,并且追追踪可以接受方法调用的远程对象。服 务器端的骨干网完成对服务器对象实际的方法调用,并获取返回值。返回值向下经远程引用层、HYPERLINK /wiki/服务器服务器端的传输层传递回客户端,再向上经传输层和远程调用层返回。最后,占位程序获得返回值。 要完成以上步骤需要有以下几个步骤: 1)生成一个远程接口 2)实现远程对象(服务器端程序) 3)生成占位程序和HYPERLINK /wiki/骨干网骨干网(服务器端程序) 4)编写服务器程序 5)编写客户程序
显示全部
相似文档