项目管理 | IT/商务管理 | 职涯
首页 - 管理和职涯
管理&职涯
全文搜索:   

Java程序设计语言基础,第一部分 - 第八课:远程方法调用
作者: 翻译:朱茵
2000-12-11 20:05:10



Java的远程方法调用 (RMI) 应用程序接口(API)可以让客户机和服务器通过网络通信。通常情况下,客户机程序发送请求到服务器程序,服务器程序响应这些请求。

一个常见的例子是在网络上共享一个字处理程序。字处理程序安装在服务器上,任何打算使用该程序的用户可以在自己的机器上双击位于桌面上的字处理程序的图标,或者在命令行键入运行该程序的命令。调用方发送一个请求到服务器程序,以便访问该字处理软件,服务器程序响应之后,使得该软件可以被请求方得到。

 RMI API可以让你创建一个公共可访问的远程服务器对象,该对象可以让客户和服务器进行通信,方式是通过对服务器对象的简单方法的调用。客户可以容易地直接同服务器对象进行直接或者间接的通信,方式是使用URL和HTTP。

本节课将向大家介绍如何使用RMI API来建立客户机和服务器的通信。

关于例子

本节课把第六课中的文件输入和输出的应用程序例子进行改写为在RMI API方式下进行。

要完成的任务

RMIClient1程序表示一个简单的用户界面,用户可以输入文本,一旦点击了Click Me按钮,该本文就通过远程服务器对象被发送给RMIClient2程序。一旦你点击RMIClient2程序中的Click Me按钮时,就显示出从RMIClient1发来的文本。


Client 1的第一个实例


如果你启动了RMIClient1的第二个实例,并输入了一些文本,一旦点击Click Me按钮,该文本就被发送到RMIClient2程序中。要查看RMIClient2所接收到的文本内容,只需点击RMIClient2程序中的Click Me 按钮。


Client 1的第二个实例


文件总览

这个例子程序由RMIClient1程序,远程对象和接口,RMIClient2程序组成,如下图所示。每个程序的相应的源代码的链接也如下所示。

 

  • RMIClient1.java:在RemoteServer 服务器对象上调用sendData方法的客户程序。
  • RMIClient2.java: 在RemoteServer 服务器对象上调用getData方法的客户程序。
  • RemoteServer.java: 远程服务器对象,用来实现Send.java, sendData和getData这些远程方法。
  • Send.java: 远程接口,用来定义sendData和getData远程服务器方法。

除此之外,下面的java.policy安全政策文件规定了运行该例子所需的有关权限。

grant {
 permission java.net.SocketPermission "*:1024-65535","connect,accept,resolve";
 permission java.net.SocketPermission "*:80","connect"; 
 permission java.awt.AWTPermission "accessEventQueue";
 permission java.awt.AWTPermission "showWindowWithoutWarningBanner";
};

【下一页】
声明:
Builder.com.cn(原ZDNet China应用开发频道)原创文章版权所有,未经许可严禁转载,且不构成投资建议。
近期相关报道:
实用技术文档
J2me XML
C/C++ C#
Java Oracle
Mysql .Net
VB.NET CSS
SQL Server 数据库
SQL UNIX
Linux Jsp
PHP Perl
Javascript IIS
XHTML ColdFusion
ASP/ASP.NET Apache
AJAX
订阅技术邮件
订阅"技术圈"杂志!请在下面选择您感兴趣的专题,填写e-mail地址,然后按订阅按钮:
应用开发管理
VS.NET 周刊
Database 周刊
WEB Service周刊
JAVA 周刊
IT 认证
Windows服务器周刊
互联网开发
当Windows Server 2008专家得5000元现金大奖
Copyright (c) CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
ZDNet 公司标识是 CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159