diff --git a/src/main/java/com/alibaba/druid/stat/DruidDataSourceStatManager.java b/src/main/java/com/alibaba/druid/stat/DruidDataSourceStatManager.java index 8f9c13315d..3a8b7d6585 100644 --- a/src/main/java/com/alibaba/druid/stat/DruidDataSourceStatManager.java +++ b/src/main/java/com/alibaba/druid/stat/DruidDataSourceStatManager.java @@ -144,9 +144,7 @@ public class DruidDataSourceStatManager implements DruidDataSourceStatManagerMBe synchronized (instances) { if (instances.size() == 0) { try { - int id = System.identityHashCode(instance.getClass()); - ObjectName objectName = new ObjectName(MBEAN_NAME + ",id=" + id); - // ObjectName objectName = new ObjectName(MBEAN_NAME); + ObjectName objectName = new ObjectName(MBEAN_NAME); if (!mbeanServer.isRegistered(objectName)) { mbeanServer.registerMBean(instance, objectName); } @@ -208,9 +206,7 @@ public class DruidDataSourceStatManager implements DruidDataSourceStatManagerMBe if (instances.size() == 0) { try { - int id = System.identityHashCode(instance.getClass()); - ObjectName objName = new ObjectName(MBEAN_NAME + ",id=" + id); - mbeanServer.unregisterMBean(objName); + mbeanServer.unregisterMBean(new ObjectName(MBEAN_NAME)); } catch (Throwable ex) { LOG.error("unregister mbean error", ex); } diff --git a/src/main/java/com/alibaba/druid/stat/DruidStatService.java b/src/main/java/com/alibaba/druid/stat/DruidStatService.java index e9f75127bb..9c571ed6a4 100644 --- a/src/main/java/com/alibaba/druid/stat/DruidStatService.java +++ b/src/main/java/com/alibaba/druid/stat/DruidStatService.java @@ -357,9 +357,8 @@ public final class DruidStatService implements DruidStatServiceMBean { public static void registerMBean() { MBeanServer mbeanServer = ManagementFactory.getPlatformMBeanServer(); try { - int id = System.identityHashCode(instance.getClass()); - ObjectName objectName = new ObjectName(MBEAN_NAME + ",id=" + id); - // ObjectName objectName = new ObjectName(MBEAN_NAME); + + ObjectName objectName = new ObjectName(MBEAN_NAME); if (!mbeanServer.isRegistered(objectName)) { mbeanServer.registerMBean(instance, objectName); } @@ -370,10 +369,9 @@ public final class DruidStatService implements DruidStatServiceMBean { public static void unregisterMBean() { MBeanServer mbeanServer = ManagementFactory.getPlatformMBeanServer(); + try { - int id = System.identityHashCode(instance.getClass()); - ObjectName objectName = new ObjectName(MBEAN_NAME + ",id=" + id); - mbeanServer.unregisterMBean(objectName); + mbeanServer.unregisterMBean(new ObjectName(MBEAN_NAME)); } catch (JMException ex) { LOG.error("unregister mbean error", ex); }