afunms

My Software,My Dream—Forge a more perfect NMS product.

Tomcat连接池的当前连接数

        关于如何配置Tomcat数据库连接池,网上已有太多文章了。可是找不到一篇文章能
告诉我,怎么能得到Tomcat连接池的当前连接数。如果想要监视Tomcat的运行状况,这
是一个重要参数。所以我花了半天的时间,专门来研究这个问题。
   
       先是看了Tomcat的相关源码,得到它用了jakarta commons-dbcp这个包,又下载了
commons-dbcp这个包的源吗。终于在BasicDataSource找到getNumActive方法,这就是我想
要的。

    Context initCtx = new InitialContext();
    BasicDataSource bds = (BasicDataSource)initCtx.lookup("java:comp/env/jdbc/afunms");
    initCtx.close();    
    bds.getConnection();
    System.out.println("当前连接数=" + bds.getNumActive());

    随时getConnection()的增加,这个numActive也会增多(如果不关闭connection的话)。
当numActive>maxActive(这个maxActive在xml文件中)时,程序就再不能连上DB了。这就
是我以前的程序为什么会出错的原因,哈哈。 

    注:在连接池配置文件.xml中要写明
    <parameter>
      <name>factory</name>
      <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
    </parameter>

posted on 2007-09-21 21:37 afunms 阅读(4064) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航:
 

My Links

News

留言簿(18)

随笔档案

相册

搜索

最新评论

阅读排行榜