[英]Regarding adding spring jmx functionality in the below application
我是JMX世界的新手,到目前为止我已经探索过它主要用于监视和管理应用程序,因为我对spring JMX非常感兴趣,我已经开发了这个接口和类, 你能告诉我如何特别是对于JMX特别适用于弹簧,需要在spring xml中进行哪些设置 ...
package dustin.jmx.modelmbeans;
/**
* Interface to expose Model MBean via Spring.
*/
public interface SimpleCalculatorIf
{
public int add(final int augend, final int addend);
public int subtract(final int minuend, final int subtrahend);
public int multiply(final int factor1, final int factor2);
public double divide(final int dividend, final int divisor);
}
以下是班级..
package dustin.jmx.modelmbeans;
public class SimpleCalculator implements SimpleCalculatorIf
{
/**
* Calculate the sum of the augend and the addend.
*
* @param augend First integer to be added.
* @param addend Second integer to be added.
* @return Sum of augend and addend.
*/
public int add(final int augend, final int addend)
{
return augend + addend;
}
/**
* Calculate the difference between the minuend and subtrahend.
*
* @param minuend Minuend in subtraction operation.
* @param subtrahend Subtrahend in subtraction operation.
* @return Difference of minuend and subtrahend.
*/
public int subtract(final int minuend, final int subtrahend)
{
return minuend - subtrahend;
}
/**
* Calculate the product of the two provided factors.
*
* @param factor1 First integer factor.
* @param factor2 Second integer factor.
* @return Product of provided factors.
*/
public int multiply(final int factor1, final int factor2)
{
return factor1 * factor2;
}
/**
* Calculate the quotient of the dividend divided by the divisor.
*
* @param dividend Integer dividend.
* @param divisor Integer divisor.
* @return Quotient of dividend divided by divisor.
*/
public double divide(final int dividend, final int divisor)
{
return dividend / divisor;
}
}
1)将SimpleCalculatorIf重命名为SimpleCalculatorMBean。 然后,context.xml中的这两行就足以让Spring检测并将你的SimpleCalculator注册为MBean http://docs.oracle.com/javase/tutorial/jmx/mbeans/standard.html
<context:mbean-export/>
<bean class="dustin.jmx.modelmbeans.SimpleCalculator"/>
2)但最有效的方法是使用Spring注释,然后你甚至不需要一个接口
@ManagedResource(objectName="bean:name=SimpleCalculator", description="My Managed Calculator", log=true,
logFile="jmx.log", currencyTimeLimit=15, persistPolicy="OnUpdate", persistPeriod=200,
persistLocation="foo", persistName="bar")
public class SimpleCalculator implements SimpleCalculatorIf
{
@ManagedOperation
public int add(final int augend, final int addend)
{
return augend + addend;
}
...
实际默认@ManagedResource没有param也可以工作,我只是想显示你有多少注释选项。 阅读Spring文档中的更多内容
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.