第七篇 RMI框架.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
RMI框架-开发分布式Java应用程序 本章内容 远程对象的基本概念 (2) 分布式应用的模型与几种成熟的框架 (3) RMI的基本原理(重点) (4) RMI应用开发的具体步骤及应用(重点) (5) 简单工厂设计模式在RMI中的应用 (6) 远程方法调用中的参数与返回值(重点) (7) 远程对象的equals、hashCode和clone方法 (8)远程对象的回调 (9) 远程对象的并发访问 远程对象和本地对象 远程对象:不仅能被本地进程访问,而且能够被远程进程访问。 本地对象:只能被本地进程访问。 为了保证各种对象之间可靠的进行消息的传送,采用TCP协议作为网络传输层的通信协议。 分布式对象模型 远程对象分布在服务器端,提供各种通用服务。本地对象分布在客户端,请求服务器端的特定服务。 分布式对象模型应该具备以下功能: (1)把分布在不同节点上的对象之间发送的消息转换成字节序列(编组)。 (2)通过Socket建立连接并且发送消息(字节序列)。 (3)处理网络连接或传送消息时出现的各种故障。 (4)为分布在不同节点上的对象提供分布式垃圾回收机制。 (5)为远程方法调用提供安全检查机制。 (6)服务器端运用多线程或非阻塞通信机制,确保远程对象具有较好的并发性,同时能被多个客户端访问。 (7)创建与特定业务逻辑相关各种远程对象和本地对象。 几种成熟的分布式对象模型 CORBA(Common Object Request Broker Architecture)通用对象请求代理架构,是构建分布式应用的一个标准。 该标准由对象管理组织(OMG)设立并进行控制,CORBA定义了一系列API、通信协议、和对象/服务信息模型用于使得异质应用程序能够互相操作,这些应用程序用不同的编程语言编写,运行在不同的平台上。 CORBA把用其他语言开发的程序代码和关于该程序代码能力和如何调用该程序代码的信息包到一个开发包(package)中,开发包中的对象则可以在网络上被其他程序(或CORBA对象)调用。 CORBA使用一种接口描述语言(Interface description language,IDL)用于刻画对象将呈现出来的接口。CORBA又规定了从IDL到特定编程语言,如C++或Java,实现的映射。这个映射精确的描述了CORBA数据类型是如何被客户端和服务器端实现的。 几种成熟的分布式对象模型 SOAP(Simple Object Access Protocol):简单对象访问协议。 SOAP是一种轻量的、简单的、基于 XML 的协议,它被设计成在 Web上交换结构化的和固化的信息。 SOAP 可以和现存的许多因特网协议和格式结合使用,包括超文本传输协议( HTTP),简单邮件传输协议(SMTP),多用途网际邮件扩充协议(MIME)。它还支持从消息系统到远程过程调用(RPC)等大量的应用程序。 SOAP 包括三个部分:? 1) SOAP 封装:它定义了一个框架, 该框架描述了消息中的内容是什么,谁应当处理它以及它是可选的,还是必须的。? 2) SOAP 编码规则:它定义了一种序列化的机制,用于交换应用程序所定义的数据类型的实例。? 3) SOAP RPC 表示:它定义了用于表示远程过程调用和应答的协定。? 几种成熟的分布式对象模型 (3) RMI(Remote Method Invocation)远程方法调用 是用Java在JDK1.1中实现的,它增强了Java开发分布式应用的能力。它可以被看作是RPC的Java版本。但是传统RPC并不能很好地应用于分布式对象系统。而Java RMI 则支持存储于不同地址空间的程序级对象之间彼此进行通信,实现远程对象之间的无缝远程调用。 Java RMI具有Java的“Write Once,Run Anywhere”的优点,是分布式应用系统的百分之百纯Java解决方案。用Java RMI开发的应用系统可以部署在任何支持JRE(Java Run Environment Java,运行环境)的平台上。但是,RMI对于用非Java语言开发的应用系统的支持不足。不能与用非Java语言编写的对象进行通信。 RMI基本原理 RMI采用代理来负责客户与远程对象之间通过Socket进行通信的细节。RMI为远程对象分别生成客户端代理(存根,Stub)和服务器端代理(骨架,Skeleton)。 注意:JDK5.0以后,RMI会在运行时自动生成远程对象的存根和骨架类,更彻底的封装了RMI框架的实现细节,简化了RMI的使用。 客户端 远程对象的存根 服务器 远程对象 远程对象的骨架 1.调

文档评论(0)

xiaofei2001128 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档