Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
测试Tomcat';s JDBC池连接_Tomcat_Jdbc_Connection Pooling_Jmx_Monitor - Fatal编程技术网

测试Tomcat';s JDBC池连接

测试Tomcat';s JDBC池连接,tomcat,jdbc,connection-pooling,jmx,monitor,Tomcat,Jdbc,Connection Pooling,Jmx,Monitor,有没有一种方法(例如通过使用JMX/MBean)来测试Tomcat服务器的JDBC池连接?您没有指定您使用的是哪个版本的Tomcat以及哪个连接池,因此我可以随意假设您使用的是DBCP。在这种情况下,您可以从org.apache.commons.dbcp.BasicDataSource访问许多状态值。您必须从web应用程序内部执行此操作。可能,入侵性最小的方法是插入一个JSP页面,该页面从JNDI获取汇集的数据源,查询BasicDataSource中的状态值,并将它们显示在一个简单的HTML表中

有没有一种方法(例如通过使用JMX/MBean)来测试Tomcat服务器的JDBC池连接?

您没有指定您使用的是哪个版本的Tomcat以及哪个连接池,因此我可以随意假设您使用的是DBCP。在这种情况下,您可以从
org.apache.commons.dbcp.BasicDataSource
访问许多状态值。您必须从web应用程序内部执行此操作。可能,入侵性最小的方法是插入一个JSP页面,该页面从JNDI获取汇集的数据源,查询BasicDataSource中的状态值,并将它们显示在一个简单的HTML表中。

如果要使用JMX bean,可以查找此bean:

Catalina:type=DataSource,context=/[context],host=[hostname],class=javax.sql.DataSource,name="[your JNDI name]"

该bean有一个
getConnection()
方法,该方法返回一个
javax.sql.Connection
对象。完成后记得调用
close()

这并不能真正回答MBeans的问题。OP要求“一种方法”。建议的方式当然合格。我感谢所有的回复和建议!皮斯特,我会研究你的建议。非常感谢。好的,我看到了这个,但不确定它是否真的检查了JDBC池,或者只是检查了数据库连接。谢谢。它会给你一个JDBC连接。。。从游泳池里。如果您真的想查看池本身,请查看同一MXBean的各种属性。