Java Spring Framework jmx托管注解@ManagedAttribute未在MBeanServerConnection/Jconsole/Visual vm/bean列表中显示方法

epfja78i  于 2023-08-02  发布在  Spring
关注(0)|答案(2)|浏览(96)

我在代码中添加了Spring注解,但是当通过visual vm连接时,方法“myExample()”不会显示在JMX bean列表中
我的代码:

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jmx.export.annotation.ManagedAttribute;
import org.springframework.jmx.export.annotation.ManagedResource;
import org.springframework.stereotype.Component;

@Component
@ManagedResource
public class MyClass {

   @Autowired
   private Example exampleService;

   @ManagedAttribute
   public String myExample() {
      return exampleService.getSomething().toString();
   }
}

字符串
知道为什么会这样吗

yeotifhr

yeotifhr1#

你应该使用@ManagedOperation@ManagedAttribute仅用于getter / setter方法。

rm5edbpk

rm5edbpk2#

这听起来很奇怪,但是你可以通过将myExample重命名为getMyExample来修复它。

@ManagedAttribute
public String getMyExample() {
    return exampleService.getSomething().toString();
}

字符串
它甚至会显示为“MyExample”,例如。visualVM。

相关问题