JMX

概念:

JMX(Java Management Extensions,即Java管理扩展),可通过各种通讯协议,访问被注册Java类的方法,以达到管理Java程序的目的。

 

例子:

注册类

 

public class Hello implements HelloMBean {
    private String name;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public void printHello() {
        System.out.println("Hello World, " + name);
    }
    public void printHello(String whoName) {
        System.out.println("Hello , " + whoName);
    }
}

接口类

public interface HelloMBean {
    public String getName();
    public void setName(String name);
    public void printHello();
    public void printHello(String whoName);
}

服务类

 

import javax.management.MBeanServerFactory;
import javax.management.ObjectName;
import com.sun.jdmk.comm.HtmlAdaptorServer;

public class MBeanRegister {
    public static void main(String[] args) throws Exception {
	//启动MBean注册容器
	MBeanServer mBeanContainer = MBeanServerFactory.createMBeanServer();
	
	//注册自己的MBean
	ObjectName mBeanName = new ObjectName("MBean:name=Hello");
	HelloMBean helloMBean = new Hello();
	mBeanContainer.registerMBean(helloMBean, mBeanName);
	
	//注册Mbean服务器
	ObjectName serverName = new ObjectName("Server:name=HtmlAdaptorServer");
	HtmlAdaptorServer htmlAdaptorServer = new HtmlAdaptorServer();
	htmlAdaptorServer.setPort(8082);
	mBeanContainer.registerMBean(htmlAdaptorServer, serverName);

	//启动MBean服务器
	htmlAdaptorServer.start();
    }
}

 

 

访问:http://localhost:8082

 

JMX

解释:

1,接口类名必须为 "注册类名"+"MBean"。

2,ObjectName就是MBean的注册名字,格式为"Domain:name=ClassName",MBean服务器会根据Domain分类。


Spring+JMX

http://lionbule.iteye.com/blog/771727




相关文章:

  • 2021-12-09
  • 2021-05-13
  • 2022-12-23
  • 2022-12-23
  • 2021-07-26
  • 2021-08-19
  • 2021-11-27
  • 2022-01-10
猜你喜欢
  • 2021-05-20
  • 2021-08-25
相关资源
相似解决方案