⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dynamicremoteobject.java

📁 《精通RMI:Java与EJB企业级应用开发》书籍的源代码. 本书是讲述RMI技术的经典著作
💻 JAVA
字号:
/*
 * Copyright 1999 by dreamBean Software,
 * All rights reserved.
 */
package smartworld.server;

import java.lang.reflect.Proxy;
import java.net.URL;
import java.rmi.Remote;
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;

/**
 *    This is a replacement for UnicastRemoteObject that you can use to export objects with
 *    dynamically generated stubs.
 *
 *   @author Rickard 謆erg (rickard@dreambean.com)
 */
public class DynamicRemoteObject
{
   // Static --------------------------------------------------------
   static DynamicClassLoader dcl;
   
   static
   {
      try
      {
         dcl = new DynamicClassLoader(new URL[] 
         {
            new URL(System.getProperty("java.rmi.server.codebase"))
         });
      } catch (Exception e)
      {
         e.printStackTrace();
      }
   }
   
   public synchronized static Remote exportObject(Remote obj)
      throws RemoteException
   {
      Class remote = obj.getClass().getInterfaces()[0];
      Remote proxy = (Remote) Proxy.newProxyInstance(dcl,
                                       new Class[] { remote },
                                       new RemoteProxy(obj));
      UnicastRemoteObject.exportObject(proxy);
      return proxy;
   }
   
   // Constructors --------------------------------------------------
   private DynamicRemoteObject()
   {
   }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -