Spring JMX 允许您创建代理,将调用重新路由到在 本地或远程 .这些代理为您提供了标准的 Java 接口, 通过它,您可以与您的 MBean 进行交互。以下代码演示如何配置 在本地运行的 MBean 的代理:MBeanServerMBeanServerSpring中文文档

<bean id="proxy" class="org.springframework.jmx.access.MBeanProxyFactoryBean">
	<property name="objectName" value="bean:name=testBean"/>
	<property name="proxyInterface" value="org.springframework.jmx.IJmxTestBean"/>
</bean>

在前面的示例中,您可以看到为在 下注册的 MBean 创建了一个代理。代理实现的接口集 由属性控制,映射方法的规则和 这些接口上的属性与 MBean 上的操作和属性是相同的 使用的规则。ObjectNamebean:name=testBeanproxyInterfacesInterfaceBasedMBeanInfoAssemblerSpring中文文档

可以创建任何可通过 访问的 MBean 的代理。默认情况下,定位并使用本地,但 您可以覆盖此设置并提供指向远程的 THAT 来满足指向远程 MBean 的代理:MBeanProxyFactoryBeanMBeanServerConnectionMBeanServerMBeanServerConnectionMBeanServerSpring中文文档

<bean id="clientConnector"
		class="org.springframework.jmx.support.MBeanServerConnectionFactoryBean">
	<property name="serviceUrl" value="service:jmx:rmi://remotehost:9875"/>
</bean>

<bean id="proxy" class="org.springframework.jmx.access.MBeanProxyFactoryBean">
	<property name="objectName" value="bean:name=testBean"/>
	<property name="proxyInterface" value="org.springframework.jmx.IJmxTestBean"/>
	<property name="server" ref="clientConnector"/>
</bean>

在前面的示例中,我们创建一个指向远程计算机的 它使用 .这就是 传递给通过物业。代理 created 通过 this 将所有调用转发给 .MBeanServerConnectionMBeanServerConnectionFactoryBeanMBeanServerConnectionMBeanProxyFactoryBeanserverMBeanServerMBeanServerConnectionSpring中文文档