JavaBlog
BlogJava
首页
新随笔
联系
聚合
管理
随笔 - 3 文章 - 2 trackbacks - 0
<
2007年6月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(2)
给我留言
查看公开留言
查看私人留言
随笔分类
java
JavaBean
jsp(2)
Servlet
struts
tomcat(1)
随笔档案
2007年6月 (3)
文章分类
java
JavaBean
jsp(1)
Struts
收藏夹
Struts2.0学习资源(2)
博客收藏
博客收藏
王君的工作簿
搜索
最新评论
阅读排行榜
1.
java访问Sql server 2005补充两个问题
(953)
2.
使用微软提供的MS Sql Server JDBC驱动访问Sql Server2000出现的问题
(761)
3.
[转载]Struts中html-link标签
(474)
评论排行榜
1.
java访问Sql server 2005补充两个问题
(0)
2.
使用微软提供的MS Sql Server JDBC驱动访问Sql Server2000出现的问题
(0)
3.
[转载]Struts中html-link标签
(0)
java访问Sql server 2005补充两个问题
前面提到在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)
编辑
收藏
所属分类:
jsp
、
tomcat
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
相关文章:
java访问Sql server 2005补充两个问题
使用微软提供的MS Sql Server JDBC驱动访问Sql Server2000出现的问题