Web应用程序是一个Struts应用程序(无弹簧),使用带有Hibernate的c3p0,它在Tomcat6中。Hibernate和c3p0 jar都在{WEB_APP}/WEB-INF/lib文件夹中。
在Tomcat中,jmx远程已启用:-Dcom.sun.management.jmxremote-Dcom.sun.management.jmxmote.port=8888-Dcom.sun.management.jmxremote.ssl=false-Dcom.sun.management.jmxremote.authenticate=错误
当我使用jconsole连接到它时,我在选项卡中看不到c3p0-MBean。
我需要在Tomcat或web应用程序中进行任何配置吗?
谢谢!
当您不使用Spring或JBoss时,当涉及到Hibernate的JMX监控时,事情就变得更加容易了。
您需要执行以下操作:
-
在休眠配置中添加:
<property name="hibernate.generate_statistics">true</property>
-
然后,在应用程序的启动阶段,您需要向MBean服务器注册MBean:
MBeanServer mbeanServer = ManagementFactory.getPlatformMBeanServer(); ObjectName objectName = new ObjectName("org.hibernate:type=statistics"); StatisticsService mBean = new StatisticsService(); mBean.setStatisticsEnabled(true); mBean.setSessionFactory(sessionFactory); mbeanServer.registerMBean(mBean, objectName);