【问题标题】:Java RMI : What is the role of the stub-skeleton that are generated by the rmic compilerJava RMI:rmic 编译器生成的存根骨架的作用是什么
【发布时间】:2013-06-02 20:16:23
【问题描述】:

我目前正在学习 Java RMI(远程方法调用),并按照 Oracle 在其网站上提供的教程进行操作。不过我有一个特别的问题:

rmic 生成的 stub-skeleton 有什么用?我真的需要它吗?

【问题讨论】:

  • 自 1998 年以来没有使用过骷髅。
  • @EJP-SIR,我在 stack-overflow 上看到了很多与标签 rmi 相关的答案。与其他官方教程相比,它们是最好的。您有任何与 rmi 相关的个人博客吗?请,我需要它们!谢谢...
  • @shekarsuman 谢谢。我不写博客,只写我的书 ;-) java.rmi: The Guide to Remote Method Invocation in Java, Pitt & McNiff, Addison Wesley 2001。

标签: java rmi distributed


【解决方案1】:

Stub/Skeleton 向开发人员隐藏了通信细节。 Stub 是实现远程接口的类。它充当远程对象的客户端占位符。存根与服务器端骨架通信。 骨架是存根在服务器端的对应物。两者都通过网络进行通信。骨架实际上知道真正的远程对象将存根的请求委托给它,并将响应返回给存根。 您需要两者,因为它们是 RMI 的基本构建块。

【讨论】:

  • 您不需要两者。自 1998 年以来,您就不需要骨架,如果您按照前言 Javadoc 中所说的内容进行操作,那么您也不需要存根到 UnicastRemoteObject
  • @EJP 我认为幕后有存根对象,即使您使用UnicastRemoteObject。毕竟,将在客户端机器上创建一些对象来表示远程对象;该对象是一个代理,我认为可以称为存根。它确实扮演了旧存根类的实例所扮演的角色。
  • @TheodoreNorvell 有一个 动态生成 存根对象。您不再需要生成一个。
猜你喜欢
  • 1970-01-01
  • 2011-10-13
  • 2012-01-25
  • 2010-12-21
  • 2018-04-23
  • 2021-01-28
  • 2022-01-23
  • 2014-05-17
相关资源
最近更新 更多