数据库连接池的配置方法

数据库连接池配置的几种方法
一.Tomcat配置数据源:
方式一:在WebRoot下面建文件夹META-INF,里面建一个文件context.xml,内容如下:
<Context>
<Resource
name = "myConnectionPool"
auth = "Container"
type = "javax.sql.DataSource"
driverClassName = "com.mysql.jdbc.Driver"
url = "jdbc:MYSQL://localhost:3306/DbDemo"
username = "admin"
password = "admin"
maxIdle = "2"
maxWait = "5000"
maxActive = "4"/>
</Context>`
name: 给资源随便取一个名字,便于程序调用
auth: 指定管理Resource的Manager,由两个可选值:Container和Application。Container 表示由容器来创建和管理Resource,Application表示由WEB应用来创建和管理 Resource。如果在web application deployment descriptor中使用<resource-ref>,这个属性 是必需的,如果使用<resource-env-ref>,这个属性是可选的。
type: 资源类型
driverClassName: 加载驱动
url:路径
username:访问数据库的用户名
password: 访问数据库的密码
maxIdle: 最大空闲数,数据库连接的最大空闲时间。超过空闲时间,数据库连
接将被标记为不可用,然后被释放。设为0表示无限制。
maxWait: 最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示
无限制
maxActive: 连接池的最大数据库连接数。设为0表示无限制

----------------------------------------------------------------------------------------------------------------------
方式二.在Tomcat的目录下的conf下的context.xml中,修改原来的context标签与方法一
一样。
----------------------------------------------------------------------------------------------------------------------
方法三.在配置虚拟路径时,在配置conf下的service.xml时,在context标签内改成这样
<Context path="/WebRoot" reloadable="true"
docBase="E:/workspace/DataSource/WebRoot" >
<Resource
name = "myConnectionPool"
auth = "Container"
type = "javax.sql.DataSource"
driverClassName = "com.mysql.jdbc.Driver"
url = "jdbc:MYSQL://localhost:3306/DbDemo"
username = "admin"
password = "admin"
maxIdle = "2"
maxWait = "5000"
maxActive = "4" />
</Context>
-----------------------------
测试代码:(java:comp/env)固定不变
(要导入的包:java.sql.* javax.sql.DataSource javax.naming.*)
InitialContext icn=new InitialContext();
DataSource ds=(DataSource) icn.lookup("java:comp/env/ myConnectionPool ");
Connection conn=ds.getConnection();
if(conn!=null)
response.getWriter().print("success");
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值