我正在使用jboss 7.0进行Web应用程序。在standalone.xml文件中,我已将数据源定义为
<datasource jndi-name="java:jboss/datasources/finacpacds" pool-name="ltmscompanyadmindspool" enabled="true" jta="true" use-java-context="true" use-ccm="true">
<connection-url>
jdbc:mysql://localhost:3306/finacpac?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8
</connection-url>
<driver>
mysqldriver
</driver>
<transaction-isolation>
TRANSACTION_READ_COMMITTED
</transaction-isolation>
<pool>
<min-pool-size>
10
</min-pool-size>
<max-pool-size>
50
</max-pool-size>
<prefill>
true
</prefill>
<use-strict-min>
false
</use-strict-min>
<flush-strategy>
FailingConnectionOnly
</flush-strategy>
</pool>
<security>
<user-name>
root
</user-name>
<password>
</password>
</security>
<validation>
<validate-on-match>
false
</validate-on-match>
<background-validation>
false
</background-validation>
<useFastFail>
false
</useFastFail>
</validation>
<statement>
<prepared-statement-cache-size>
100
</prepared-statement-cache-size>
<share-prepared-statements/>
</statement>
</datasource>
现在我的问题是,我可以通过system.out.print语句看到jboss运行时创建的连接池数量。有没有办法做到这一点。
答案 0 :(得分:0)
您无法将该信息打印到System.out
。您可以通过CLI读取数据源统计信息:
/subsystem=datasources/data-source=ltmscompanyadmindspool/statistics=pool:read-resource(include-runtime=true)
/subsystem=datasources/data-source=ltmscompanyadmindspool/statistics=jdbc:read-resource(include-runtime=true)
您可以阅读有关统计信息here的更多信息。
另外,您的数据源配置有点令人担忧。为什么要禁用验证?如果你这样做,那么当数据库服务器中断或重新启动时,JBoss无法在不重新启动JBoss服务器的情况下验证/刷新连接。