jmx之Standard MBeans

package com.Standard.mbean;

interface HelloWorldMBean// 定一一个MBean接口
{
public void setName(String Name);

public String getName();

public void printName();
}

public class HelloWorld implements HelloWorldMBean {// 实现Mbean
private String name = null;

public HelloWorld() {// 构造函数
   this.name = "我想飞";
}

public String getName() {// 只读
   return this.name;
}

public void printName() {// 输出函数
   System.out.println("Hello World :" + this.getName());
}

public void setName(String name) {// 只写
   this.name = name;

}

}


package com.Standard.test;

import javax.management.Attribute;
import javax.management.MBeanServer;
import javax.management.MBeanServerFactory;
import javax.management.ObjectName;

import com.Standard.mbean.HelloWorld;
import com.sun.jdmk.comm.HtmlAdaptorServer;

public class HelloWorldAgent {
private MBeanServer mb = null;

public HelloWorldAgent() {
}

public void oprateMbean() throws Exception {
   mb = MBeanServerFactory.createMBeanServer("username");// 获得一个mBeanServser

   HelloWorld hello = new HelloWorld();// 获得一个Hello对象
   ObjectName helloObject = new ObjectName(// 创建一个objectName对象
     "aHelloWorldAgent:name=jonw,type=String");
   try {
    mb.registerMBean(hello, helloObject);// 将hello注册到mbeanserver中
   } catch (Exception e) {
    System.out.println(e.toString());
   }

   HtmlAdaptorServer html = new HtmlAdaptorServer();// html适配器,可通过html访问
   ObjectName htmlObject = new ObjectName(
     "dHelloWorldAgent:name=htmladapter,port=9095");
   html.setPort(9095);// 设置端口
   mb.registerMBean(html, htmlObject);// 注册进mbeanserver中

   html.start();// 启动HtmlAdaptorServer
}

public static void main(String[] a) throws Exception {
   new HelloWorldAgent().oprateMbean();
}
}

你可能感兴趣的:(html,sun)