接口 MBeanServer

所有父级接口:
MBeanServerConnection
所有已知的子接口:
MBeanServerForwarder

public interface MBeanServer extends MBeanServerConnection

这是在代理端进行 MBean 操作的接口。它包含创建、注册和删除 MBean 所需的方法以及已注册 MBean 的访问方法。这是 JMX 基础结构的核心组件。

用户代码通常不实现此接口。相反,实现此接口的对象是使用 MBeanServerFactory 类中的一种方法获得的。

添加到 MBean 服务的每个 MBean 都变得可管理:它的属性和操作可以通过连接到该 MBean 服务的连接器/适配器远程访问。 Java 对象不能在 MBean 服务中注册,除非它是符合 JMX 的 MBean。

当 MBean 在 MBean 服务中注册或取消注册时,将发出 MBeanServerNotification 通知。要将对象注册为 MBeanServerNotifications 的监听器,您应该调用 MBean 服务方法 addNotificationListener ObjectName ObjectNameMBeanServerDelegate 。这个 ObjectName 是:
JMImplementation:type=MBeanServerDelegate .

MBeanServerFactory 类的 createMBeanServer newMBeanServer 方法获得的对象对其方法应用安全检查,如下所示。

首先,如果没有安全管理器(System.getSecurityManager() 为空),则此接口的实现可以自由地不进行任何检查。

假设有一个安全管理器,或者实施选择无论如何都要进行检查,则检查的详细信息如下。在下文中,除非另有说明,classNameMBeanInfo.getClassName() 为目标 MBean 返回的字符串。

如果安全检查失败,该方法将抛出 SecurityException

对于可以抛出 InstanceNotFoundException 的方法,无论权限如何,都会为不存在的 MBean 抛出此异常。这是因为不存在的 MBean 没有 className

自从:
1.5