java获取C3P0连接池当前的状态

半兽人 发表于: 2018-09-11   最后更新时间: 2018-09-11 10:58:21  
{{totalSubscript}} 订阅, 3,689 游览

在C3P0的使用过程中,如果想实时获取连接池的状态,可通过以下方法。

  1. ComboPooledDataSource主要使用这个类的方法获取状态

  2. 如果你是用DataSource这个接口来接收的,那么,请先强转为ComboPooledDataSource;

例子:

Connection connection = null;
try {
    connection = dataSource.getConnection();
    ComboPooledDataSource cp = (ComboPooledDataSource) dataSource;
    System.out.println(cp.getMaxPoolSize());// 最大连接数
    System.out.println(cp.getMinPoolSize());// 最小连接数
    System.out.println(cp.getNumBusyConnections());// 正在使用连接数
    System.out.println(cp.getNumIdleConnections());// 空闲连接数
    System.out.println(cp.getNumConnections());// 总连接数
    connection.close();
} catch (SQLException e) {
    e.printStackTrace();
} finally {
    connection.close();
}



查看java更多相关的文章或提一个关于java的问题,也可以与我们一起分享文章
提问