返回介绍

20.2.3 代理 MBean

发布于 2024-08-17 00:45:49 字数 1162 浏览 0 评论 0 收藏 0

Spring的MBeanProxyFactoryBean是一个代理工厂bean,像我们在第15章中所演示的远程代理工厂bean类似。在前面所介绍的内容中,它们会提供代理,用来访问远程的Spring受管bean,与之不同,MBcanProxyFactoryBean可以让我们可以直接访问远程的MBean(就如同配置在本地的其他bean一样)。图20.4展示了它的工作原理。

图20.4 MBeanFactoryBean创建远程MBean的代理。客户端通过此代理与远程MBean进行交互,就像它是本地Bean一样

例如,考虑如下的MBeanProxyFactoryBean声明:

objectName属性指定了远程MBean的对象名称。在这里是引用我们之前导出的SpittleControllerMBean。

server属性引用了MBeanServerConnection,通过它实现MBean所有通信的路由。在这里,我们注入了之前配置的MBeanServerConnectionFactoryBean。

最后,proxyInterface属性指定了代理需要实现的接口。在本示例中,我们使用20.1.2小节所定义的SpittleControllerManagedOperations接口。

对于上面声明的remoteSpittleControllerMBean,我们现在可以把它注入到类型为SpittleControllerManagedOperations的bean属性中,并使用它来访问远程的MBean。这样,我们就可以调用setSpittlesPerPage()和getSpittlesPerPage()方法了。

我们已经看到与MBean通信的几种方式,现在我们可以在应用运行的时候显示和调整Spring bean配置。但是目前为止,这都是单方面的会话。都是我们与MBean在沟通。现在是时候通过监听通知(notification)来倾听它们在说什么。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文