Spring 下透明的让POJO 变为支持JMX的MBean

    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>execute,getCallCount</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自带的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值