模块 java.rmi

类 LocateRegistry

java.lang.Object
java.rmi.registry.LocateRegistry

public final class LocateRegistry extends Object
LocateRegistry 用于获取对特定主机(包括本地主机)上引导远程对象注册表的引用,或创建接受特定端口上的调用的远程对象注册表。

请注意,getRegistry 调用实际上并未与远程主机建立连接。它只是创建对远程注册表的本地引用,即使远程主机上没有运行注册表也会成功。因此,作为此方法的结果返回的对远程注册表的后续方法调用可能会失败。

自从:
1.1
参见:
  • 方法详情

    • getRegistry

      public static Registry  getRegistry() throws RemoteException
      为默认注册表端口 1099 上的本地主机返回对远程对象 Registry 的引用。
      返回:
      对远程对象注册表的引用(存根)
      抛出:
      RemoteException - 如果无法创建引用
      自从:
      1.1
    • getRegistry

      public static Registry  getRegistry(int port) throws RemoteException
      返回对指定 port 上本地主机的远程对象 Registry 的引用。
      参数:
      port - 注册表接受请求的端口
      返回:
      对远程对象注册表的引用(存根)
      抛出:
      RemoteException - 如果无法创建引用
      自从:
      1.1
    • getRegistry

      public static Registry  getRegistry(String  host) throws RemoteException
      返回对默认注册表端口 1099 上指定 host 上的远程对象 Registry 的引用。如果 hostnull,则使用本地主机。
      参数:
      host - 远程注册表的主机
      返回:
      对远程对象注册表的引用(存根)
      抛出:
      RemoteException - 如果无法创建引用
      自从:
      1.1
    • getRegistry

      public static Registry  getRegistry(String  host, int port) throws RemoteException
      返回对指定 hostport 上的远程对象 Registry 的引用。如果 hostnull ,则使用本地主机。
      参数:
      host - 远程注册表的主机
      port - 注册表接受请求的端口
      返回:
      对远程对象注册表的引用(存根)
      抛出:
      RemoteException - 如果无法创建引用
      自从:
      1.1
    • getRegistry

      public static Registry  getRegistry(String  host, int port, RMIClientSocketFactory  csf) throws RemoteException
      返回在指定的 hostport 上对远程对象 Registry 的本地创建的远程引用。与此远程注册表的通信将使用提供的 RMIClientSocketFactory csf 创建与远程 hostport 上的注册表的 Socket 连接。
      参数:
      host - 远程注册表的主机
      port - 注册表接受请求的端口
      csf - 客户端 Socket 工厂用于与注册表建立连接。如果 csf 为空,则默认客户端 Socket 工厂将用于注册表存根。
      返回:
      对远程注册表的引用(存根)
      抛出:
      RemoteException - 如果无法创建引用
      自从:
      1.2
    • createRegistry

      public static Registry  createRegistry(int port) throws RemoteException
      在接受指定 port 请求的本地主机上创建并导出 Registry 实例。

      Registry 实例就像调用静态 UnicastRemoteObject.exportObject 方法一样被导出,将 Registry 实例和指定的 port 作为参数传递,除了 Registry 实例是使用众所周知的对象标识符导出的,ObjID 实例是用值 ObjID.REGISTRY_ID 构造的。

      参数:
      port - 注册表接受请求的端口
      返回:
      注册表
      抛出:
      RemoteException - 如果无法导出注册表
      自从:
      1.1
    • createRegistry

      public static Registry  createRegistry(int port, RMIClientSocketFactory  csf, RMIServerSocketFactory  ssf) throws RemoteException
      在使用自定义套接字工厂与该实例通信的本地主机上创建并导出一个 Registry 实例。创建的注册表使用从提供的 RMIServerSocketFactory 创建的 ServerSocket 监听给定 port 上的传入请求。

      Registry 实例被导出,就像调用静态 UnicastRemoteObject.exportObject 方法一样,传递 Registry 实例、指定的 port 、指定的 RMIClientSocketFactory 和指定的 RMIServerSocketFactory 作为参数,除了 Registry 实例是使用众所周知的对象标识符导出的,一个ObjID 用值 ObjID.REGISTRY_ID 构造的实例。

      参数:
      port - 注册表接受请求的端口
      csf - 客户端 Socket 工厂用于连接到注册表
      ssf - 服务端 ServerSocket 工厂用于接受与注册表的连接
      返回:
      注册表
      抛出:
      RemoteException - 如果无法导出注册表
      自从:
      1.2