mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-07-05 00:04:33 +08:00
692 lines
41 KiB
HTML
692 lines
41 KiB
HTML
<div class="header">
|
||
<h1 class="title" title="Package">Package javax.management</h1>
|
||
<div class="docSummary">
|
||
<div class="block">
|
||
提供Java管理扩展的核心类。
|
||
</div>
|
||
</div>
|
||
<p>See: <a href="#package.description">描述</a></p>
|
||
</div><div class="contentContainer">
|
||
<ul class="blockList">
|
||
<li class="blockList">
|
||
<table border="0" cellpadding="3" cellspacing="0" class="typeSummary" summary="Interface Summary table, listing interfaces, and an explanation">
|
||
<caption>
|
||
<span>接口摘要</span>
|
||
<span class="tabEnd"> </span>
|
||
</caption>
|
||
<tbody>
|
||
<tr>
|
||
<th class="colFirst" scope="col">接口</th>
|
||
<th class="colLast" scope="col">描述</th>
|
||
</tr>
|
||
</tbody>
|
||
<tbody>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/Descriptor.html" title="interface in javax.management">Descriptor</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
JMX元素的附加元数据。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/DescriptorAccess.html" title="interface in javax.management">DescriptorAccess</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
该接口用于访问与JMX组件关联的描述符类的描述符,即
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/DescriptorRead.html" title="interface in javax.management">DescriptorRead</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
用于读取管理界面元素(如MBeanInfo)的描述符的接口。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/DynamicMBean.html" title="interface in javax.management">DynamicMBean</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
定义应该由动态MBean(显示动态管理界面的MBean)实现的方法。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanRegistration.html" title="interface in javax.management">MBeanRegistration</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
可以由MBean实现,以便在从MBean服务器注册或注销之前和之后执行操作。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanServer.html" title="interface in javax.management">MBeanServer</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
这是代理方面的MBean操作界面。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanServerConnection.html" title="interface in javax.management">MBeanServerConnection</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
此接口表示与MBean服务器通信的方式,无论是本地还是远程。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanServerDelegateMBean.html" title="interface in javax.management">MBeanServerDelegateMBean</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
定义MBeanServerDelegate类的对象的管理界面。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/NotificationBroadcaster.html" title="interface in javax.management">NotificationBroadcaster</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
由发出通知的MBean实现的接口。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/NotificationEmitter.html" title="interface in javax.management">NotificationEmitter</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
由发出通知的MBean实现的接口。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/NotificationFilter.html" title="interface in javax.management">NotificationFilter</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
由任何作为通知过滤器的类来实现。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/NotificationListener.html" title="interface in javax.management">NotificationListener</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
应该由想要接收通知的对象来实现。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/PersistentMBean.html" title="interface in javax.management">PersistentMBean</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
这个类是由MBeans实现的,旨在持久化的接口。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/QueryExp.html" title="interface in javax.management">QueryExp</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
表示与数据库查询“where子句”类似的关系约束。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/ValueExp.html" title="interface in javax.management">ValueExp</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
表示可以作为参数传递给关系表达式的值。
|
||
</div> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table> </li>
|
||
<li class="blockList">
|
||
<table border="0" cellpadding="3" cellspacing="0" class="typeSummary" summary="Class Summary table, listing classes, and an explanation">
|
||
<caption>
|
||
<span>类摘要</span>
|
||
<span class="tabEnd"> </span>
|
||
</caption>
|
||
<tbody>
|
||
<tr>
|
||
<th class="colFirst" scope="col">类</th>
|
||
<th class="colLast" scope="col">描述</th>
|
||
</tr>
|
||
</tbody>
|
||
<tbody>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/Attribute.html" title="class in javax.management">Attribute</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
通过将其名称与其值相关联来表示MBean属性。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/AttributeChangeNotification.html" title="class in javax.management">AttributeChangeNotification</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
提供MBean发送的属性更改通知的定义。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/AttributeChangeNotificationFilter.html" title="class in javax.management">AttributeChangeNotificationFilter</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>该类实现了<a href="../../javax/management/NotificationFilter.html" title="javax.management中的接口">88487332228232的</a> <code>NotificationFilter</code> <a href="../../javax/management/AttributeChangeNotification.html" title="javax.management中的类">接口</a> 。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/AttributeList.html" title="class in javax.management">AttributeList</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
表示MBean属性值的列表。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/AttributeValueExp.html" title="class in javax.management">AttributeValueExp</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
表示用作关系约束的参数的属性。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/DefaultLoaderRepository.html" title="class in javax.management">DefaultLoaderRepository</a></td>
|
||
<td class="colLast">Deprecated
|
||
<div class="block">
|
||
<span class="deprecationComment">改用<a href="../../javax/management/MBeanServer.html#getClassLoaderRepository--"><code>MBeanServer.getClassLoaderRepository()</code></a> 。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/ImmutableDescriptor.html" title="class in javax.management">ImmutableDescriptor</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
一个不可变的描述符。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/JMX.html" title="class in javax.management">JMX</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
来自JMX API的静态方法。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanAttributeInfo.html" title="class in javax.management">MBeanAttributeInfo</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
描述为管理而公开的MBean属性。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanConstructorInfo.html" title="class in javax.management">MBeanConstructorInfo</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
描述由MBean公开的构造函数。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanFeatureInfo.html" title="class in javax.management">MBeanFeatureInfo</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
提供一个MBean描述符对象的一般信息。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanInfo.html" title="class in javax.management">MBeanInfo</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>描述MBean暴露的管理界面;</span>
|
||
<span>即可用于管理操作的一组属性和操作。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanNotificationInfo.html" title="class in javax.management">MBeanNotificationInfo</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<code>MBeanNotificationInfo</code>类用于描述针对给定Java类通知的MBean发布的不同通知实例的特性。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanOperationInfo.html" title="class in javax.management">MBeanOperationInfo</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
描述MBean公开的管理操作。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanParameterInfo.html" title="class in javax.management">MBeanParameterInfo</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
描述MBean暴露的操作的参数。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanPermission.html" title="class in javax.management">MBeanPermission</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
控制访问MBeanServer操作的权限。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanServerBuilder.html" title="class in javax.management">MBeanServerBuilder</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>此类表示创建默认的<a href="../../javax/management/MBeanServer.html" title="javax.management中的接口"><code>MBeanServer</code></a>实现的构建器。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanServerDelegate.html" title="class in javax.management">MBeanServerDelegate</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
从管理的角度来看MBean服务器。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanServerFactory.html" title="class in javax.management">MBeanServerFactory</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
提供MBean服务器引用。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanServerInvocationHandler.html" title="class in javax.management">MBeanServerInvocationHandler</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span><a href="../../java/lang/reflect/InvocationHandler.html" title="java.lang.reflect中的接口"><code>InvocationHandler</code></a>将MBean管理界面中的方法通过MBean服务器转发到MBean。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanServerNotification.html" title="class in javax.management">MBeanServerNotification</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
表示MBean服务器通过MBeanServerDelegate MBean发出的通知。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanServerPermission.html" title="class in javax.management">MBeanServerPermission</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
A执行与MBeanServers有关的操作的权限。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanTrustPermission.html" title="class in javax.management">MBeanTrustPermission</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
此权限在签名者或代码库中表示“信任”。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/Notification.html" title="class in javax.management">Notification</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
Notification类表示由MBean发出的通知。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/NotificationBroadcasterSupport.html" title="class in javax.management">NotificationBroadcasterSupport</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>提供<code>NotificationEmitter</code> <a href="../../javax/management/NotificationEmitter.html" title="javax.management中的接口">接口的</a>实现。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/NotificationFilterSupport.html" title="class in javax.management">NotificationFilterSupport</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>提供<code>NotificationFilter</code> <a href="../../javax/management/NotificationFilter.html" title="javax.management中的接口">接口的</a>实现。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/ObjectInstance.html" title="class in javax.management">ObjectInstance</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
用于表示MBean的对象名称及其类名。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/ObjectName.html" title="class in javax.management">ObjectName</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
表示MBean的对象名称,或可匹配多个MBean名称的模式。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/Query.html" title="class in javax.management">Query</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
构造查询对象约束。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/QueryEval.html" title="class in javax.management">QueryEval</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
允许在特定MBean服务器的上下文中执行查询。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/StandardEmitterMBean.html" title="class in javax.management">StandardEmitterMBean</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
一个MBean,其管理界面由Java接口上的反射决定,并发出通知。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/StandardMBean.html" title="class in javax.management">StandardMBean</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
一个MBean,其管理界面由Java接口上的反射决定。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/StringValueExp.html" title="class in javax.management">StringValueExp</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
表示作为关系约束的参数的字符串。
|
||
</div> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table> </li>
|
||
<li class="blockList">
|
||
<table border="0" cellpadding="3" cellspacing="0" class="typeSummary" summary="Exception Summary table, listing exceptions, and an explanation">
|
||
<caption>
|
||
<span>异常摘要</span>
|
||
<span class="tabEnd"> </span>
|
||
</caption>
|
||
<tbody>
|
||
<tr>
|
||
<th class="colFirst" scope="col">异常</th>
|
||
<th class="colLast" scope="col">描述</th>
|
||
</tr>
|
||
</tbody>
|
||
<tbody>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/AttributeNotFoundException.html" title="class in javax.management">AttributeNotFoundException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
指定的属性不存在或无法检索。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/BadAttributeValueExpException.html" title="class in javax.management">BadAttributeValueExpException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
当无效的MBean属性传递给查询构造方法时抛出。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/BadBinaryOpValueExpException.html" title="class in javax.management">BadBinaryOpValueExpException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
当无效表达式传递给构造查询的方法时抛出。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/BadStringOperationException.html" title="class in javax.management">BadStringOperationException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
当无效的字符串操作传递给构造查询的方法时抛出。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/InstanceAlreadyExistsException.html" title="class in javax.management">InstanceAlreadyExistsException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
MBean已经在存储库中注册。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/InstanceNotFoundException.html" title="class in javax.management">InstanceNotFoundException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
存储库中不存在指定的MBean。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/IntrospectionException.html" title="class in javax.management">IntrospectionException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
在MBean的内省期间发生了一个例外。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/InvalidApplicationException.html" title="class in javax.management">InvalidApplicationException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
当尝试应用以下任一操作时抛出:将MBean的子查询表达式或对错误类的MBean的限定属性表达式。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/InvalidAttributeValueException.html" title="class in javax.management">InvalidAttributeValueException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
指定的值对属性无效。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/JMException.html" title="class in javax.management">JMException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
JMX实现抛出异常。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/JMRuntimeException.html" title="class in javax.management">JMRuntimeException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
JMX实现发出的运行时异常。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/ListenerNotFoundException.html" title="class in javax.management">ListenerNotFoundException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
存储库中不存在指定的MBean侦听器。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/MalformedObjectNameException.html" title="class in javax.management">MalformedObjectNameException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
字符串的格式不对应于有效的ObjectName。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanException.html" title="class in javax.management">MBeanException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
表示代理中MBean方法抛出的“用户定义”异常。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/MBeanRegistrationException.html" title="class in javax.management">MBeanRegistrationException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
封装由preRegister(),preDeregister()方法抛出的异常
|
||
<code>MBeanRegistration</code>接口。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/NotCompliantMBeanException.html" title="class in javax.management">NotCompliantMBeanException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
尝试在不符合JMX的MBean的MBean服务器中注册对象时发生的异常。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/OperationsException.html" title="class in javax.management">OperationsException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
表示对MBean执行操作时MBean服务器中抛出的异常。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/ReflectionException.html" title="class in javax.management">ReflectionException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
表示在使用java.lang.reflect类调用MBean方法时,MBean服务器中抛出的异常。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/RuntimeErrorException.html" title="class in javax.management">RuntimeErrorException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
当一个
|
||
<code>java.lang.Error</code>发生在代理中时,它应该被捕获并重新抛出为
|
||
<code>RuntimeErrorException</code> 。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/RuntimeMBeanException.html" title="class in javax.management">RuntimeMBeanException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
表示代理中MBean方法抛出的运行时异常。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/RuntimeOperationsException.html" title="class in javax.management">RuntimeOperationsException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
表示在对MBean执行操作时在代理中抛出的运行时异常。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/ServiceNotFoundException.html" title="class in javax.management">ServiceNotFoundException</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
表示不支持请求的服务时引发的异常。
|
||
</div> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table> </li>
|
||
<li class="blockList">
|
||
<table border="0" cellpadding="3" cellspacing="0" class="typeSummary" summary="Annotation Types Summary table, listing annotation types, and an explanation">
|
||
<caption>
|
||
<span>注解类型摘要</span>
|
||
<span class="tabEnd"> </span>
|
||
</caption>
|
||
<tbody>
|
||
<tr>
|
||
<th class="colFirst" scope="col">Annotation Type</th>
|
||
<th class="colLast" scope="col">描述</th>
|
||
</tr>
|
||
</tbody>
|
||
<tbody>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><a href="../../javax/management/DescriptorKey.html" title="annotation in javax.management">DescriptorKey</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
<span>元注释描述注释元素如何与<code>Descriptor</code>中的字段<a href="../../javax/management/Descriptor.html" title="javax.management中的接口">相关</a> 。</span>
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor">
|
||
<td class="colFirst"><a href="../../javax/management/MXBean.html" title="annotation in javax.management">MXBean</a></td>
|
||
<td class="colLast">
|
||
<div class="block">
|
||
用于将界面明确标记为MXBean接口或不作为MXBean接口的注释。
|
||
</div> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table> </li>
|
||
</ul>
|
||
<a name="package.description">
|
||
<!-- --> </a>
|
||
<h2 title="Package javax.management Description">Package javax.management Description</h2>
|
||
<div class="block">
|
||
<p> <span>提供Java管理扩展的核心类。</span> </p>
|
||
<p> <span>Java管理扩展(JMX <sup><font size="-1">TM</font></sup> )API是用于管理和监视的标准API。</span> <span>典型用途包括:</span> </p>
|
||
<ul>
|
||
<li> <span>咨询和更改应用程序配置</span> </li>
|
||
<li> <span>累积关于应用程序行为的统计信息并使其可用</span> </li>
|
||
<li> <span>通知国家变化和错误的条件。</span> </li>
|
||
</ul>
|
||
<p> <span>JMX API也可以用作管理系统,网络等的解决方案的一部分。</span> </p>
|
||
<p> <span>API包括远程访问,因此远程管理程序可以与正在运行的应用程序进行交互,以实现这些目的。</span> </p>
|
||
<h2> <span>MBeans</span> </h2>
|
||
<p> <span>JMX API的基本概念是<em>MBean</em> 。</span> <span>MBean是一个表示资源的命名<em>管理对象</em> 。</span> <span>它具有必须<em>公开</em>的<em id="mgIface">管理界面</em> ,包括:</span> </p>
|
||
<ul>
|
||
<li> <span>命名和键入的属性,可以读取和/或写入</span> </li>
|
||
<li> <span>命名和键入的操作可以被调用</span> </li>
|
||
<li> <span>可以由MBean发布的类型通知。</span> </li>
|
||
</ul>
|
||
<p> <span>例如,代表应用程序配置的MBean可以具有表示不同配置项的属性。</span> <span>读取<code>CacheSize</code>属性将返回该项目的当前值。</span> <span>编写它会更新项目,从而潜在地改变正在运行的应用程序的行为。</span> <span>诸如<code>save</code>可以<code>save</code>存储当前配置。</span> <span>每次更改配置时,都可以发送ConfigurationChangedNotification等<code>ConfigurationChangedNotification</code> 。</span> </p>
|
||
<p> <span>在JMX API的标准用法中,MBeans被实现为Java对象。</span> <span>然而,如下所述,这些对象通常不直接引用。</span> </p>
|
||
<h3> <span>标准MBeans</span> </h3>
|
||
<p> <span>为了使MBean的实现变得简单,JMX API包含了<em>标准MBean</em>的概念。</span> <span>标准MBean是一种使用某些命名模式从Java界面推导其属性和操作的类,与JavaBeans <sup><font size="-1">TM</font></sup>类似。</span> <span>例如,考虑一个这样的接口:</span> </p>
|
||
<pre> <span>public interface ConfigurationMBean {
|
||
public int getCacheSize();
|
||
public void setCacheSize(int size);
|
||
public long getLastChangedTime();
|
||
public void save();
|
||
}</span> </pre>
|
||
<p> <span>方法<code>getCacheSize</code>和<code>setCacheSize</code>限定类型的一个读写属性<code>int</code>称为<code>CacheSize</code> (以初始资本,与JavaBeans惯例不同)。</span> </p>
|
||
<p> <span>该方法<code>getLastChangedTime</code>定义类型的属性<code>long</code>称为<code>LastChangedTime</code> 。</span> <span>这是一个只读属性,因为没有方法<code>setLastChangedTime</code> 。</span> </p>
|
||
<p> <span>方法<code>save</code>定义了一个称为<code>save</code> 。</span> <span>它不是一个属性,因为它的名字开头不是<code>get</code> , <code>set</code> ,或<code>is</code> 。</span> </p>
|
||
<p> <span>标准MBean的确切命名模式详见<a href="#spec">JMX Specification</a> 。</span> </p>
|
||
<p> <span>有两种方法来创建一个具有此管理界面的MBean的Java对象。</span> <span>一个是对象是一个与Java接口具有完全相同名称但没有<code>MBean</code>后缀的类。</span> <span>因此,在示例中,对象将是类<code>Configuration</code> ,在相同的Java包为<code>ConfigurationMBean</code> 。</span> <span>第二种方法是使用<a href="../../javax/management/StandardMBean.html" title="javax.management中的类"><code>StandardMBean</code></a>类。</span> </p>
|
||
<h3> <span>MXBeans</span> </h3>
|
||
<p> <span><em>MXBean</em>是标准MBean的变体,其中复杂类型映射到<a href="../../javax/management/openmbean/package-summary.html"><code>javax.management.openmbean</code></a>包中定义的一组标准类型。</span> <span>如果您需要在MBean界面中引用特定于应用程序的类,那么MXBeans是合适的。</span> <span>他们进行了详细的规范说明<a href="../../javax/management/MXBean.html" title="javax.management中的注释"><code>MXBean</code></a> 。</span> </p>
|
||
<h3> <span>动态MBean</span> </h3>
|
||
<p> <span><em>动态MBean</em>是一个在运行时定义其管理界面的MBean。</span> <span>例如,配置MBean可以通过解析XML文件来确定其公开的属性的名称和类型。</span> </p>
|
||
<p> <span>实现<a href="../../javax/management/DynamicMBean.html" title="javax.management中的接口"><code>DynamicMBean</code></a>接口的类的任何Java对象都是动态MBean。</span> </p>
|
||
<h3> <span>打开MBean</span> </h3>
|
||
<p> <span>一个<em>开放MBean</em>是一种动态MBean,其中使用一小组预定义Java类构建了属性类型和操作参数和返回值。</span> <span>开放的MBeans可以帮助远程管理程序进行操作,这些程序不一定能够访问特定于应用程序的类型,包括非Java程序。</span> <span>打开的MBeans由包<a href="openmbean/package-summary.html"><code> javax.management.openmbean</code></a>定义。</span> </p>
|
||
<h3> <span>模型MBeans</span> </h3>
|
||
<p> <span><em>模型MBean</em>是一种动态MBean,充当管理界面和底层托管资源之间的桥梁。</span> <span>管理界面和被管理资源都被指定为Java对象。</span> <span>相同的Model MBean实现可以通过不同的管理接口和托管资源重复使用多次,并且可以提供常见的功能,如持久性和缓存。</span> <span>模型MBeans由包<a href="modelmbean/package-summary.html"><code> javax.management.modelmbean</code></a>定义。</span> </p>
|
||
<h2> <span>MBean服务器</span> </h2>
|
||
<p> <span>为了有用,必须在<em>MBean服务器</em>中注册<em>MBean</em> 。</span> <span>MBean服务器是MBean的存储库。</span> <span>通常,MBean的唯一访问是通过MBean服务器。</span> <span>换句话说,代码不再直接访问实现MBean的Java对象,而是通过MBean服务器以名称访问MBean。</span> <span>每个MBean在MBean服务器中都有一个唯一的名称,由<a href="../../javax/management/ObjectName.html" title="javax.management中的类"><code>ObjectName</code></a>类定义。</span> </p>
|
||
<p> <span>MBean服务器是一个实现该接口的对象<a href="../../javax/management/MBeanServer.html" title="javax.management中的接口"><code>MBeanServer</code></a> 。</span> <span>使用最方便的MBean服务器是<em>Platform MBean Server</em> 。</span> <span>这是一个单独的MBean服务器,可以在同一个Java虚拟机中运行的不同托管组件共享。</span> <span>使用方法<a href="../../java/lang/management/ManagementFactory.html#getPlatformMBeanServer--"><code>ManagementFactory.getPlatformMBeanServer()</code></a>访问平台MBean服务器。</span> </p>
|
||
<p> <span>应用程序代码还可以使用<a href="../../javax/management/MBeanServerFactory.html" title="javax.management中的类"><code>MBeanServerFactory</code></a>类创建一个新的MBean服务器,或访问已创建的MBean服务器。</span> </p>
|
||
<h3> <span>在MBean服务器中创建MBean</span> </h3>
|
||
<p> <span>创建MBean有两种方法。</span> <span>一个是构造一个将是MBean的Java对象,然后使用<a href="../../javax/management/MBeanServer.html#registerMBean-java.lang.Object-javax.management.ObjectName-"><code>registerMBean</code></a>方法在MBean服务器中注册它。</span> <span>另一个是使用<a href="../../javax/management/MBeanServer.html#createMBean-java.lang.String-javax.management.ObjectName-"><code>createMBean</code></a>方法之一在一个操作中创建和注册MBean。</span> </p>
|
||
<p> <span><code>registerMBean</code>方法对于本地使用来说更简单,但不能远程使用。</span> <span><code>createMBean</code>方法可以远程使用,但有时需要注意类加载问题。</span> </p>
|
||
<p> <span>当它被注册或未注册的MBean服务器,如果它实现了一个MBean可以执行的操作<a href="../../javax/management/MBeanRegistration.html" title="javax.management中的接口"><code>MBeanRegistration</code></a>接口。</span> </p>
|
||
<h3> <span>访问MBean服务器中的MBean</span> </h3>
|
||
<p> <span>给定<code>ObjectName</code> <code>name</code>和<code>MBeanServer</code> <code>mbs</code> ,您可以访问属性和操作,如本示例所示:</span> </p>
|
||
<pre> <span>int cacheSize = mbs.getAttribute(name, "CacheSize");
|
||
<a href="../../javax/management/Attribute.html" title="class in javax.management"><code>Attribute</code></a> newCacheSize =
|
||
new Attribute("CacheSize", new Integer(2000));
|
||
mbs.setAttribute(name, newCacheSize);
|
||
mbs.invoke(name, "save", new Object[0], new Class[0]);</span> </pre>
|
||
<p id="proxy"> <span>或者,如果您有一个与MBean的管理界面相对应的Java接口,则可以使用以下<em>MBean代理</em> :</span> </p>
|
||
<pre> <span>ConfigurationMBean conf =
|
||
<a href="../../javax/management/JMX.html#newMBeanProxy-javax.management.MBeanServerConnection-javax.management.ObjectName-java.lang.Class-"><code>JMX.newMBeanProxy</code></a>(mbs, name, ConfigurationMBean.class);
|
||
int cacheSize = conf.getCacheSize();
|
||
conf.setCacheSize(2000);
|
||
conf.save();</span> </pre>
|
||
<p> <span>使用MBean代理只是一个方便。</span> <span>第二个例子最终会调用与第一个相同的<code>MBeanServer</code>操作。</span> </p>
|
||
<p> <span>对于名称与某些模式匹配的MBean和/或其属性满足某些限制的MBean,可以查询MBean服务器。</span> <span>名称模式使用<a href="../../javax/management/ObjectName.html" title="javax.management中的类"><code>ObjectName</code></a>类构建,约束使用<a href="../../javax/management/Query.html" title="javax.management中的类"><code>Query</code></a>类<a href="../../javax/management/Query.html" title="javax.management中的类">构建</a> 。</span> <span>方法<a href="../../javax/management/MBeanServer.html#queryNames-javax.management.ObjectName-javax.management.QueryExp-"><code>queryNames</code></a>和<a href="../../javax/management/MBeanServer.html#queryMBeans-javax.management.ObjectName-javax.management.QueryExp-"><code>queryMBeans</code></a>然后执行查询。</span> </p>
|
||
<h3> <span>MBean生命周期</span> </h3>
|
||
<p> <span>MBean可以实现<a href="../../javax/management/MBeanRegistration.html" title="javax.management中的接口"><code>MBeanRegistration</code></a>接口,以便在MBean服务器中注册和注销时被告知。</span> <span>此外, <a href="../../javax/management/MBeanRegistration.html#preRegister-javax.management.MBeanServer-javax.management.ObjectName-"><code>preRegister</code></a>方法允许MBean获得对<code>MBeanServer</code>对象的引用,并在MBean服务器中获取其<code>ObjectName</code> 。</span> </p>
|
||
<h2> <span>通知</span> </h2>
|
||
<p> <span><em>通知</em>是<a href="../../javax/management/Notification.html" title="javax.management中的类"><code>Notification</code></a>类或一个子类的一个实例。</span> <span>除了Java类之外,它还有一个<em>类型</em>字符串,可以将其与同一个类的其他通知区分开来。</span> </p>
|
||
<p> <span>将发出通知的MBean必须实现<a href="../../javax/management/NotificationBroadcaster.html" title="javax.management中的接口"><code>NotificationBroadcaster</code></a>或<a href="../../javax/management/NotificationEmitter.html" title="javax.management中的接口"><code>NotificationEmitter</code></a>接口。</span> <span>通常,它通过子类化<a href="../../javax/management/NotificationBroadcasterSupport.html" title="javax.management中的类"><code>NotificationBroadcasterSupport</code></a>或委派给该类的实例来实现。</span> <span>这是一个例子:</span> </p>
|
||
<pre> <span>public class Configuration <b>extends NotificationBroadcasterSupport</b>
|
||
implements ConfigurationMBean {
|
||
...
|
||
private void updated() {
|
||
Notification n = new Notification(...);
|
||
<b><a href="../../javax/management/NotificationBroadcasterSupport.html#sendNotification-javax.management.Notification-"><code>sendNotification</code></a>(n)</b>;
|
||
}
|
||
}</span> </pre>
|
||
<p> <span><em>监听器</em>可以接收通知, <em>监听器</em>是实现<a href="../../javax/management/NotificationListener.html" title="javax.management中的接口"><code>NotificationListener</code></a>接口的对象。</span> <span>您可以使用方法<a href="../../javax/management/MBeanServer.html#addNotificationListener-javax.management.ObjectName-javax.management.NotificationListener-javax.management.NotificationFilter-java.lang.Object-"><code>MBeanServer.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object)</code></a>将侦听器添加到MBean。</span> <span>您可以选择为此方法提供<em>过滤器</em> ,仅选择感兴趣的通知。</span> <span>过滤器是实现<a href="../../javax/management/NotificationFilter.html" title="javax.management中的接口"><code>NotificationFilter</code></a>接口的对象。</span> </p>
|
||
<p> <span>MBean可以是同一MBean服务器中其他MBean发出的通知的侦听器。</span> <span>在这种情况下,它实现<a href="../../javax/management/NotificationListener.html" title="javax.management中的接口"><code>NotificationListener</code></a> ,方法<a href="../../javax/management/MBeanServer.html#addNotificationListener-javax.management.ObjectName-javax.management.ObjectName-javax.management.NotificationFilter-java.lang.Object-"><code>MBeanServer.addNotificationListener(ObjectName, ObjectName, NotificationFilter, Object)</code></a>用于监听。</span> </p>
|
||
<h2> <span>远程访问MBean</span> </h2>
|
||
<p> <span>MBean服务器可以远程通过<em>连接器</em>来访问。</span> <span>连接器允许远程Java应用程序以与本地服务器基本相同的方式访问MBean服务器。</span> <span>包<a href="remote/package-summary.html"><code> javax.management.remote</code></a>定义连接器。</span> </p>
|
||
<p> <span>JMX规范还定义了<em>适配器</em>的概念。</span> <span>适配器在协议(如SNMP或HTML)中的请求之间进行转换,并访问MBean服务器。</span> <span>因此,例如,SNMP GET操作可能会导致MBean服务器上的<code>getAttribute</code> 。</span> </p>
|
||
<h3 id="interop"> <span>JMX规范版本之间的互操作性</span> </h3>
|
||
<p> <span>当客户端使用JMX Remote API连接到服务器时,它们可能没有相同版本的JMX规范。</span> <span>这里描述的JMX规范版本是1.4版本。</span> <span>以前的版本是1.0,1.1和1.2。</span> <span>(没有1.3。)标准JMX Remote API被定义为使用版本1.2以上,因此在基于标准的部署中,唯一的互操作性问题出现在版本1.2之前。</span> </p>
|
||
<p> <span>每个版本的JMX规范继续实现以前版本的功能。</span> <span>因此,当客户端运行的版本低于服务器时,不应存在任何互操作性问题。</span> </p>
|
||
<p> <span>当客户端运行比服务器更新的版本时,某些较新的功能可能无法使用,如下一节所述。</span> <span>客户端可以通过检查确定服务器的版本<a href="../../javax/management/MBeanServerDelegateMBean.html#getSpecificationVersion--"><code>SpecificationVersion</code></a>的属性<code>MBeanServerDelegate</code> 。</span> </p>
|
||
<h4 id="interop-1.2"> <span>如果远程MBean服务器是1.2</span> </h4>
|
||
<ul>
|
||
<li><p> <span>您不能在<code>ObjectName</code>的关键属性中使用<a href="../../javax/management/ObjectName.html" title="javax.management中的类">通配符</a> ,例如<code>domain:type=Foo,name=*</code> 。</span> <span>仍然允许匹配整个属性的通配符,例如<code>*:*</code>或<code>*:type=Foo,*</code> 。</span> </p></li>
|
||
<li><p> <span>您不能在查询中使用<a href="../../javax/management/Query.html#isInstanceOf-javax.management.StringValueExp-"><code>Query.isInstanceOf</code></a> 。</span> </p></li>
|
||
<li><p> <span>不能使用点语法,如<code>HeapMemoryUsage.used</code>在<a href="../../javax/management/monitor/Monitor.html#setObservedAttribute-java.lang.String-">observed attribute</a>监视器,作为文档中描述<a href="../../javax/management/monitor/package-summary.html"><code>javax.management.monitor</code></a>包。</span> </p></li>
|
||
</ul>
|
||
<p id="spec"></p>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="simpleTagLabel">从以下版本开始:</span>
|
||
</dt>
|
||
<dd>
|
||
1.5
|
||
</dd>
|
||
<dt>
|
||
<span class="seeLabel">另请参见:</span>
|
||
</dt>
|
||
<dd>
|
||
<a href="../../../technotes/guides/jmx/index.html"> Java Platform documentation on JMX technology</a> in particular the
|
||
<a href="../../../technotes/guides/jmx/JMX_1_4_specification.pdf"> JMX Specification, version 1.4(pdf).</a>
|
||
</dd>
|
||
</dl>
|
||
</div> |