随笔 - 3  文章 - 2  trackbacks - 0
<2007年6月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

常用链接

留言簿(2)

随笔分类

随笔档案

文章分类

收藏夹

博客收藏

搜索

  •  

最新评论

阅读排行榜

评论排行榜

     前面提到在jsp中连接sql server 2005的时候发现两个问题。
     一、关于在Server.xml中配置数据源出现的问题

<Context path="/oa" reloadable="true" docBase="oa">
  
<Resource name="jdbc/sa" auth="Container" type="javax.sql.DataSource"/>
  
<ResourceParams name="jdbc/sa">
   
<parameter>
    
<name>factory</name>
    
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
   
</parameter>
    
<parameter>
             
<name>driverClassName</name>
            
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
        
</parameter>
   
<parameter>
    
<name>url</name>
    
<value>jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=db_manp</value>
   
</parameter>
   
<parameter>
    
<name>username</name>
    
<value>sa</value>
   
</parameter>
   
<parameter>
    
<name>password</name>
    
<value></value>
   
</parameter>
   
<parameter>
    
<name>maxActive</name>
    
<value>1000</value>
   
</parameter>
   
<parameter>
    
<name>maxIdle</name>
    
<value>50</value>
   
</parameter>
   
<parameter>
    
<name>maxWait</name>
    
<value>50</value>
   
</parameter>
  
</ResourceParams>
</Context>

      在Tomcat5.0.x和Sql server 2005下测试能通过,但在Tomcat5.5.x和sql server2005下测试无法通过。报这样的错误Cannot get a connection, pool exhausted最后发现是以上配置在tomcat5.5.x下确实有问题,最后修改为:
<Context path="/oa" reloadable="true" crossContext="true" debug="5" docBase="E:\eclispeworkspace\jspOA\WebRoot">
   
<Resource
    
name="jdbc/sa"
    type
="javax.sql.DataSource"
    password
=""
    driverClassName
="com.microsoft.sqlserver.jdbc.SQLServerDriver"
    maxIdle
="2"
    maxWait
="5000"
    username
="sa"
    url
="jdbc:sqlserver://localhost;DatabaseName=db_manp"
    maxActive
="4"/>
</Context>

        这样,测试就可以通过了。
        感谢
Stevie Liu的博客上写的一篇文章。

二、数据库的Connection用尽的问题
        多刷新几次后会报"Cannot get a connection, pool exhausted "的错误。参考xingmen的博客上的一篇文章
http://blog.chinajavaworld.com/entry.jspa?id=2058,他总结了三种办法。
     (1)、重启Tomcat,当然重启后肯定有效,我也试过了。只是重启这个办法不治本。
     (2)、修改<Context>配置中maxActive="4",原来maxActive为4,现在改为maxActive="0"或者调高他的值。设为0之后好像有效,试过几次。但是调高其值就没有仔细测试了。
     (3)、就是在你的代码里注意Connection用完关闭,返给连接池。
     比如,在try{}catch{}finally{},在finally中关闭释放资源等方法。
posted on 2007-06-28 15:45 eric.wen 阅读(953) 评论(0)  编辑  收藏 所属分类: jsptomcat

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


网站导航: