1 / 12
文档名称:

使用RMI和CORBA进行分布式java程序设计.doc

格式:doc   页数:12
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

使用RMI和CORBA进行分布式java程序设计.doc

上传人:1006108867 2014/1/15 文件大小:0 KB

下载得到文件列表

使用RMI和CORBA进行分布式java程序设计.doc

文档介绍

文档介绍:使用RMI和CORBA进行分布式java程序设计
(by lizhi) 分布式程序设计讨论>>>
英文原文:./developer/technicalArticles/RMI/rmi_corba/
RMI和corba是两种最重要和使用最广泛的分布式对象系统。每种都有它的长处和短处。这两种系统都在从电子商务到卫生保健等不同的行业成功的使用。在项目中使用这两种分布机制中的任何一种都是一项很困难的任务。本文介绍了RMI和corba的机理和最主要的是显示了如何开发一个有用的程序(一个从远程站点下载文件的程序)。于是有以下内容:
一个分布式系统的简介
一个RMI和corba的简介
让你体验开发一个RMI和corba程序的滋味。
说明如何使用RMI和corba从远程机器交换文件
提供一个RMI和Corba的比较。
客户/服务端模式
客户/服务模式是一个分布式计算应用。它通过使用一个应用程序(客户)和另一个程序(服务端)交换数据。在这样的一个例子里面客户端和服务端一般使用同样的语言来编写,使用相同的协议来相互通信。
在客户/服务模式应用到各种各样的地方的过程中,使用低层次的socket来开发是很典型的。使用socket来开发客户/服务端模式意味着我们必须自己设计一种协议,该协议包含客户端和服务端都统一的命令集,使得客户端和服务端能够通过这个协议来通信。例如:HTTP协议提供了一个get的方法。所有的web服务器软件都集成了该功能,而所有的浏览器软件都能够使用该功能来获得资料。
分布式对象模式
分布式对象系统是一个对象集合,通过定义很完善的统一的接口来分隔开的要求服务(客户端)和功能服务(服务端)。换句话说客户端和公共服务的提供分隔开,这些服务包括数据表现和执行的代码。这是一个分辨分布式对象模式和客户/服务模式的主要不同。
在分布式对象模式里,客户端发送一个消息到一个对象,由这个对象解释这个消息然后决定应该由什么服务来完成。这个服务,方法或选择的完成可能是被一个对象或是被一个broker。RMI和corba就是这种模式的例子。
RMI
RMI是一个分布式对象模式。它使得使用java开发分布式程序更加容易。由于不需要设计协议(这基本是一个错误的任务) 使得使用RMI开发分布式程序比使用socket更加容易。在RMI里面设计者就象在调用一个本地的类的方法一样,而实际上是在调用的时候相应的参数被发送到远端的对象和然后被解释。最后结果返回给调用者。
一个 RMI应用的流程
使用 RMI开发一个分布式应用包括如下几个步骤
1)定义一个远端的接口
2)实现这个远端的接口
3)开发一个服务端
4)开发一个客户端
5)生成Stubs 和Skeletons,运行RMI注册器,服务端和客户端
我们现在通过开发一个文件交换程序来解释这些步骤
例子:文件交换程序
这个应用允许客户端从服务端交换(或下载)所有类型的文件。第一步是定义一个远程的接口,这个接口指定了的签名方法将被服务端提供和被客户端调用。
定义一个远程接口
这个程序的远程接口在代码例子1中列出,接口FileInterface提供一个downloadFile这个带一个字符窜(文件名)变量的的方法,然后返回以一个字符窜序列的形式的相应文件数据。
代码例子1:
import ;
import ;
public interface FileInterface extends Remote {
public byte[] downloadFile(String fileName) throws
RemoteException;
}
注意接口FileInterface的如下特征:
它必须定义成public,这是为了让客户端能够通过调用远程接口来间接调用远程的对象。
必须使用从Remote接口扩展过来,这是创建一个远程的对象的需要。

实现远程的接口
下一步是实现远程的接口FileInterface。实现的例子在代码例子 2中列出。类FileImpl从UnicastRemoteObject扩展来。这显示出FileImpl类是用来创建一个单独的,不能复制的,远程的对象,
这个对象使用RMI 的默认的基于TCP的通信方式。
代码例子 2:
import .*;
import .*;
import .

最近更新

2025年浙江理工大学单招职业技能测试题库附答.. 45页

2025年深圳北理莫斯科大学马克思主义基本原理.. 13页

2025年湖南幼儿师范高等专科学校马克思主义基.. 12页

2026年中医住培带教师资理论考核题库100道附答.. 40页

2025年烟台卫生健康职业学院马克思主义基本原.. 12页

2026年医学微生物学习题集附参考答案【达标题.. 40页

小学历史与文化知识竞赛题库100道及答案(易错.. 37页

2025年西昌学院马克思主义基本原理概论期末考.. 13页

2025年辽阳职业技术学院马克思主义基本原理概.. 12页

2026年包头铁道职业技术学院单招职业技能考试.. 42页

2026年中医住培带教师资理论考核题库100道附参.. 39页

2026年江苏信息职业技术学院单招职业技能测试.. 43页

2026年网络安全知识竞赛题库【黄金题型】 40页

2026年网络安全知识竞赛题库附答案(预热题).. 39页

最新煤气操作证考试题100道附参考答案(考试直.. 39页

最新全国政法队伍教育整顿知识竞赛试题库学生.. 40页

社区宣传方案 4页

2025年冷拔钢项目建议书 78页

2025年重庆电信职业学院单招职业技能考试模拟.. 43页

2025年青岛海建投资有限公司及全资子公司公开.. 45页

2025广东广州市黄埔区人民政府黄埔街道办事处.. 49页

2025广西玉林市玉州区仁东中心卫生院招聘编外.. 44页

2025浙江嘉兴市海宁中国皮革城网络科技有限公.. 45页

2026中国东方航空技术有限公司招聘参考题库附.. 49页

2026山西省面向河海大学选调优秀高校毕业生考.. 46页

2026年c语言知识测试题及答案(夺冠系列) 13页

2026年专升本C语言真题(全优) 13页

2026年安徽城市管理职业学院单招职业适应性考.. 37页

2025年湖南省建设工程工程量清单计价办法(新).. 51页

2025年江西信息应用职业技术学院单招职业适应.. 127页