Spring 1.2不多的几样更新之一就是对JMX的支持。
通过简单的XML配置文件,把POJO山鸡变凤凰Export成MBean,使客户可以通过JMX Client调用POJO的方法,查看POJO的属性和状态。
这种集成方式与Spring对Quartz的集成一样,透明、简单,很值得在Framework界提倡。
例子在Spring自带的samples/petlinc里面,很简单。详细文档看Spring refrence文档的第18章。
比如有一个叫MyJob的POJO,我希望输出excute()和getCallCount()函数为JMX管理:
1.ApplicationContext.xml文件的定义
>bean id="myJob" class="com.itorgan.myappfuse.job.MyJob"/<
>bean id="jmxExporter" class="org.springframework.jmx.export.MBeanExporter"<
>property name="beans"<
>map<
>entry key="myappfuse:service=myJob" value-ref="myJob"/<
>/map<
>/property<
>property name="assembler"<
>bean class="org.springframework.jmx.export.assembler.MethodNameBasedMBeanInfoAssembler"<
>property name="managedMethods"<
>value/value<
>/property<
>/bean<
>/property<
>/bean<
2.MyJob,一个最普通的POJO,不述。
3.使用jmx client,可以执行myJob.excute()并查看getCallCount()的结果。
PS. 我的JMX环境
1.Tomcat5.5 alpha-10
Tomcat5.5 a10用Eclipse 3.1的JDT,终于支持使用JDK1.5语法的JSP
修改$Tomcat_Home/bin/catalina.bat
set CATALINA_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8899 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
2. Mc4j
我喜欢的jmx客户端,在mc4j.sf.net下载,也可以使用JDK5.0自带的。
Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=436271
本文介绍如何利用Spring 1.2中的JMX支持将POJO转化为MBean,实现远程管理和监控。通过简单的配置,即可实现对POJO方法的调用及属性状态的查看。
48

被折叠的 条评论
为什么被折叠?



