数据库连接池-tomcat-jdbc使用笔记

现在 主流的数据库连接池有:Proxool、C3P0、DBCP、tomcat-jdbc、Druid。其中tomcat-jdbc是tomcat服务器比较可靠的 数据库连接池。

Tomcat 在 7.0 以前的版本都是使用commons-dbcp做为连接池的实现,但是DBCP存在一些问题:

  • DBCP 是单线程的,为了保证线程安全会锁整个连接池
  • DBCP 性能不佳
  • DBCP 太复杂,超过60个类,发展滞后。

因此,通常J2EE中还会使用其它的高性能连接池,如C3P0,还有阿里系的druid等。为此,Tomcat 从 7.0 开始引入一个新的模块: Tomcat Jdbc Pool

Tomcat Jdbc Pool 近乎兼容 DBCP,性能更高

  • 异步方式获取连接
  • Tomcat Jdbc Pool是Tomcat的一个模块,基于Tomcat-Juli,使用Tomcat的日志框架
  • 使用 javax.sql.PooledConnection 接口获取连接
  • 支持高并发应用环境
  • 超简单,核心文件只有8个,比 c3p0 还少
  • 更好的空闲连接处理机制
  • 支持 JMX
  • 支持 XA Connection。
  • Tomcat Jdbc Pool 可在 Tomcat 中直接使用,也可以在独立的应用中使用。

1.作为JNDI资源使用

tomcat 数据源JNDI配置样例:

数据库连接池-tomcat-jdbc使用笔记

2.Spring容器中使用

数据库连接池-tomcat-jdbc使用笔记

3.配置注意事项

必须配置,才能启用tomcat-jdbc:

factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"

并且数据库驱动必须复制一份到tomcat/lib目录下,如

数据库连接池-tomcat-jdbc使用笔记

JNDI 工厂与类型

数据库连接池-tomcat-jdbc使用笔记

常用属性

数据库连接池-tomcat-jdbc使用笔记

数据库连接池-tomcat-jdbc使用笔记

相关推荐