rmiconnector.java

来自「jmx codeJava源码」· Java 代码 · 共 73 行

JAVA
73
字号
package book.jmx.examples;

import java.net.InetAddress;
import java.net.UnknownHostException;
import java.net.MalformedURLException;
import java.rmi.*;
import java.rmi.server.*;
import java.rmi.registry.*;
import java.util.*;

import javax.management.*;
import javax.management.modelmbean.*;
import javax.naming.*;


public class RMIConnector extends XMBean implements RMIConnectorConstants {

  private String name = "jmx/RMIConnector";
  private int port    = 0; // anonymous port

  
  /* Constructor. */

  public RMIConnector() throws Exception {
    super();
    setModelMBeanInfo(new XMBeanInfo("file:/C:/examples/RMIConnector.xml"));
    setManagedResource(this, OBJECT_REF);
  }

  
  /* Operations. */
  
  public void startServer() throws NamingException, RemoteException,
      MalformedURLException {
    
    MBeanServerInvoker invoker =
        new RMIServerInvoker(server);

    UnicastRemoteObject.exportObject(invoker, port);
    new javax.naming.InitialContext().rebind(name, invoker);    
  }


  /* Attributes. */ 

  public String getName() {
    return name;
  }
  
  public void setName(String name) {
    this.name = name;    
  }
  
  public int getPort() {
    return port;
  }
  
  public void setPort(int port) {
    this.port = port;
  }
  
  /* Export Manager */
  public Properties getExportProperties() throws UnknownHostException {
    Properties props = new Properties();
    props.put(HOST, InetAddress.getLocalHost().getHostAddress());
    props.put(PORT, "1099");
    props.put(REMOTE_NAME, getName());
    return props;  
  }

}

⌨️ 快捷键说明

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