Tomcat连接池

简介:

Java不像DotNet那样内置了连接池,所以用jdbc写程序时DB连接性能是非常差的,其实Tomcat自身就支持连接池,用法也远比第三方组件简单。(真想不明白这么重要的一个功能java为什么不给集成到api里)

先修改tomcat的配置文件server.xml,在配置应用的时候增加点东西:

 
  1. <Context docBase="XXX" path="/pool_test" debug="0"> 
  2.     <Resource name="jdbc/pool"      <!--起个名字--> 
  3.               auth="Container" 
  4.               type="javax.sql.DataSource"  
  5.               maxActive="50"        <!--最大连接数量--> 
  6.               maxIdle="0"           <!--最小数量--> 
  7.               maxWait="10000"       <!--超时时间,秒--> 
  8.               username="UID"        <!--数据库用户名--> 
  9.               password="PWD"        <!--密码--> 
  10.               driverClassName="com.mysql.jdbc.Driver"               <!--jdbc驱动--> 
  11.               url="jdbc:mysql://localhost:3306/db?useUnicode=true"  <!--jdbc连接串--> 
  12.     /> 
  13. </Context> 

然后是应用的web.xml,增加对资源的引用:

 
  1. <resource-ref> 
  2.    <description>DBConnection</description> 
  3.    <res-ref-name>jdbc/pool</res-ref-name>       <!--用刚才起的名字--> 
  4.    <res-type>javax.sql.DataSource</res-type> 
  5.    <res-auth>Container</res-auth> 
  6. </resource-ref> 

最后是代码了:

 
  1. Context ctx = new InitialContext(); 
  2. DataSource dbSource = (DataSource)ctx.lookup("java:comp/env/jdbc/pool"); //名字要加上前缀 
  3. Connection conn = dbSource.getConnection(); 
  4. //..... 
  5. conn.close(); 



本文转自 BoyTNT 51CTO博客,原文链接:http://blog.51cto.com/boytnt/775614 ,如需转载请自行联系原作者
相关文章
|
1月前
|
运维 Java 应用服务中间件
Tomcat详解(三)——tomcat多实例
Tomcat详解(三)——tomcat多实例
17 1
|
Web App开发 前端开发 Java
从源码剖析SpringBoot中Tomcat的默认最大连接数
上篇推文为什么你的websocket只能建立256个连接?推出后,有许多小伙伴问:关键是怎么解决256这个问题。嗯,可能是我的标题起的有点问题,不过如果有认真阅读文章的话,应该会知道,其实256的限制是Chrome浏览器对WebSocket进行的限制。不过,对于一个客户端来说,假如一个窗口建立一个WebSocket连接的话,想要达到256个连接,需要打开256个窗口,这个一般来说很少出现。所以大家并不需要太多的担心这个前端限制。
从源码剖析SpringBoot中Tomcat的默认最大连接数
|
SQL Java 关系型数据库
|
关系型数据库 Java 应用服务中间件
|
Web App开发 SQL 关系型数据库
|
Java 关系型数据库 应用服务中间件
|
Java 应用服务中间件
Tomcat线程池配置
1:配置executor属性 打开/conf/server.xml文件,在Connector之前配置一个线程池: 重要参数说明: name:共享线程池的名字。这是Connector为了共享线程池要引用的名字,该名字必须唯一。
1226 0