使用JMX运行Hibernate 4.3(无spring)

使用JMX运行Hibernate 4.3(无spring),第1张

使用JMX运行Hibernate 4.3(无spring)

重构为hibernate状态后,似乎是一个错误。有关详细信息,请参见https://hibernate.atlassian.net/browse/HHH-6190

这是我使用的一种变通方法,利用Java动态代理来代表来自hibernate状态的统计信息接口以及默认的平台mbean服务器:

@MXBeanpublic interface StatisticsMXBean extends Statistics {}public void initStatistics(SessionFactory sessionFactory) {    ObjectName statsName = new ObjectName("org.hibernate:type=statistics");    MBeanServer mbeanServer = ManagementFactory.getPlatformMBeanServer();    final Statistics statistics = sessionFactory.getStatistics();    statistics.setStatisticsEnabled(true);    Object statisticsMBean = Proxy.newProxyInstance(getClass().getClassLoader(), new Class<?>[] { StatisticsMXBean.class }, new InvocationHandler() { @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {     return method.invoke(statistics, args); }        });    mbeanServer.registerMBean(statisticsMBean, statsName);}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4977294.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存