Tomcat连接池使用
Posted you-xiang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tomcat连接池使用相关的知识,希望对你有一定的参考价值。
为什么要用数据库连接池?
在普通开发中频繁的建立,关闭数据库连接,会导致系统性能降低。所以通过连接的复用,建立一套数据库连接池来管理,使得一个数据库连接可以高效的复用,避免了数据库连接的频繁操作。
具体配置
在容器项目配置Context加上下面xml
// 需要在Context里面加上 reloadable="true" 的属性
<Resource name="jdbc/t1" //名称,自定义,和web.xml中的名字对应 auth="Container" //授权 type="javax.sql.DataSource" maxActive="100" //最大连接数 maxIdle="30" //在没有用户使用的时候,数据库的最小维持连接数 maxWait="10000" //每个用户最大的等待时间 username="root" //数据库账号 password="123456" //数据库密码 driverClassName="com.mysql.jdbc.Driver" //数据库驱动包 url="jdbc:mysql://localhost:3306/t1" //数据库url />
在项目web.xml 加上下面这段xml
<resource-ref> <res-ref-name>jdbc/t1</res-ref-name> //对应容器配置里的name属性 <res-auth>Container</res-auth> </resource-ref>
在项目中使用连接池
Context ctx = new InitialContext(); DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/t1"); //就是在配置文件中name属性的名称 Connection connection = ds.getConnection(); // 从连接池中获取数据库连接 connection.close(); //这个是将连接放回连接池, 而不是关闭数据库连接
以上是关于Tomcat连接池使用的主要内容,如果未能解决你的问题,请参考以下文章
如何跟踪/记录 tomcat dbcp 池中的连接并检测不返回连接池的代码
python 如何使用Jython的数据库连接池(Tomcat)。大多数示例代码演示了使用zxJDBC对象,但是从我能做的一切