参考文献:https://docs.oracle.com/cd/E19698-01/816-7609/index.html
相关文章:
Java JMX 一:初步认识:https://blog.csdn.net/youyou1543724847/article/details/82933076
Java JMX 三:Connector:https://blog.csdn.net/youyou1543724847/article/details/84300557
文章目录
1.MBean
MBean分为如下四种
类型 | 描述 |
---|---|
standard MBean | 这种类型的MBean最简单,它能管理的资源(包括属性,方法,时间)必须定义在接口中,然后MBean必须实现这个接口。它的命名也必须遵循一定的规范,例如我们的MBean为Hello,则接口必须为HelloMBean。 |
dynamic MBean | 必须实现javax.management.DynamicMBean接口,所有的属性,方法都在运行时定义 |
open MBean | 此MBean的规范还不完善,正在改进中 |
model MBean | 与标准和动态MBean相比,你可以不用写MBean类,只需使用javax.management.modelmbean.RequiredModelMBean 即可。RequiredModelMBean实现了ModelMBean接口,而ModelMBean扩展了DynamicMBean接口,因此与DynamicMBean相似,Model MBean的管理资源也是在运行时定义的。与DynamicMBean不同的是,DynamicMBean管理的资源一般定义在DynamicMBean中(运行时才决定管理那些资源),而model MBean管理的资源并不在MBean中,而是在外部(通常是一个类),只有在运行时,才通过set方法将。其加入到model MBean中。后面的例子会有详细介绍 |
2.MBeanServer
MBean Server是一个集中的管理MBean对象实例的地方。通过MBeanServer,你可以查询、管理、操作Agent应用发布的特定的MBean。
2.1 关于MbeanServer
MBeanServer一般通过MBeanServerFactory来创建
只有JMX 兼容的MBean对象才能注册到MBeanServer中。当MBean对象注册到MBeanServer对象后,该对象的属性和方就是远程可访问的了(通过JMX connector或是Adapter)
(1) Mbean注册
当MBean注册或是取消注册后,MB