MBean和MXBean的区别

我有关于MBeanMXBean的以下问题:

  1. MBeanMXBean有什么区别?
  2. MBeanMXBean的用例是什么?

MXBean只是一种特殊的MBean 。 主要区别在于MXBean限制数据types,以便与潜在客户“更加兼容”。

例如:一个MBean可以公开一个数据typesFoo属性。 现在客户端也需要这个types的Foo来理解属性。

MXBean试图限制数据types为“已经可用” – java.lang.*

看到这个教程

MXBean是一种MBean,它受限于打开types,基本上是原始types,string和它们的组合。 由于这些约束,一个MXBean可以在没有类加载的情况下使用,并且使得它们可以与非Java客户端交互操作。 您可以在这里find规范: http : //docs.oracle.com/javase/7/docs/api/javax/management/package-summary.html#package_description

MBeans可以是任何java对象,我们可以使用方法来存储/检索Serializable/Externalizable对象。 基于对象中使用的devise模式,我们可以区分标准(静态)或dynamic。 build议维护带有MBean后缀的接口类名​​称

MXBeans只引用一组预定义的types。 推荐使用MXBean来保持接口类的名称。 实现Dynamic或者说JavaBean接口。 使用MXBean,我们可以方便任何客户端使用MBean。

参考MBean和MXBean

MBeans:

可以是任何java对象,我们可以在其中使用方法存储/检索Serializable / Externalizable对象。

基于对象中使用的devise模式,我们可以区分标准(静态)或dynamic。 build议维护带有MBean后缀的接口类名​​称。

MXBeans:

仅引用预先定义的一组types。 推荐使用MXBean来保持接口类的名称。 实现Dynamic或定制JavaBean的接口。

使用MXBean,我们可以方便任何客户端使用MBean。 使用MXBean所需的其他详细信息。

请参阅此处